import glob
import shutil
import os
import re
dirs = ['DataGathering']
for dir in dirs:
file_names = glob.glob(os.path.join(dir,'*'))
file_names = [os.path.basename(name) for name in file_names]
if not os.path.exists(dir +'_renamed'):
os.makedirs(dir+'_renamed')
#os.makedirs(dir+'_renamed/csv')
root = dir + '_renamed'
for name in file_names:
if name.endswith('csv') :
continue
print(name)
rename = re.sub("[\(\[].*?[\)\]]", "",name)
splitted = rename.split('_')
package = splitted[2]
array = splitted[0]
splitted[0] = package
splitted[2] = array
pop_index = [-2] * 5 + [0]
package = splitted[0]
print(splitted)
for index in pop_index :
splitted.pop(index)
if not os.path.exists(os.path.join(root,package)):
os.makedirs(os.path.join(root,package))
destination = '_'.join(splitted)
print(splitted,destination)
if not ('Ang' in name or 'K3D' in name or name.endswith('csv')):
shutil.copy(os.path.join(dir,name),os.path.join(root,package,destination))
위 코드를 보시면 datagathering_renamed이란 폴더가 생성되고 그 안에 package에 입력된 값으로 여러개의 폴더가 생성되는데 그 각각 생성된 폴더안에 dict이란 텍스트 파일을 전부 생성하고 싶습니다.
예를 들어
makeTxt = os.path.join ({root, package}, "dict.txt")
make = open (makeTxt, "w")
이렇게 저 경로에 dict안에 내용은 상관없고 빈 텍스트 파일이라도 생성하고 싶은데 어떻게 해야 할지 모르겠네요. 예는 그냥 제가 생각해본거고(저건 당연히 에러가 나서,,) 옳은 방법을 가르쳐주시면 감사하곘습니다.