我正在创建一个将文件夹重命名为“ foldername_original”的脚本,但是出现了无效的参数错误。
这是我的剧本
import glob, os
import shutil
path= input("Path to directory containing the dataset: ")
ext = input("Extention of the dataset (eg. txt): ")
data_files = []
def get_file_list():
os.chdir(path)
for file in glob.glob("*."+ext):
data_files.append(file)
data_length = len(data_files)
print("Total files with extention *."+ext+" found: "+ str(data_length))
batch_size= input("Please enter the required batch size: ")
folder_rename()
def folder_rename():
data_folder_name = os.path.basename(path)
print("Original dataset folder path: ")
print(path)
os.rename(path, os.path.basename(path)+"_original")
new_path= path+"_original"
print("Original dataset folder renamed to: "+ data_folder_name+"_original" )
print("Original dataset new path is: "+new_path)
这是错误输出
Traceback (most recent call last):
File "data_batch.py", line 47, in <module>
get_file_list()
File "data_batch.py", line 23, in get_file_list
folder_rename()
File "data_batch.py", line 29, in folder_rename
os.rename(path, os.path.basename(path)+"_original")
OSError: [Errno 22] Invalid argument: '/mainfs/scratch/ah1g19/Datasets_sample/raw/2018/fk180731/tuna_sand/20180811_153727_ts_un6k_NEW/image/i20180811_153727' -> 'i20180811_153727_original'
答案 0 :(得分:1)
您可以通过
os.rename(path, path+"_original")
os.path.basename(path)+“ _ original”没有提供os.rename
期望的完整路径