簡體   English   中英

Python:重命名文件夾時參數無效

[英]Python: Invalid argument when renaming folder

我正在創建一個將文件夾重命名為“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)

這是錯誤 output

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/ah/Datasets_sample/raw/2018/fk180731/tuna_sand/20180811_153727_ts_un6k_NEW/image/i20180811_153727' -> 'i20180811_153727_original'

你可以這樣做

os.rename(path, path+"_original")

os.path.basename(path)+"_original" 沒有給出os.rename期望的完整路徑

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM