这是一个重命名给定目录中所有文件的代码,但是在我的终端中运行它似乎在print语句中给出了语法错误。此外,如果我评论该声明,我在主要的if语句中得到一个错误。如果我删除它也会在rename_files()函数调用语句中出现错误。
import os
def rename_files():
#Get all the files from directory
file_list = os.listdir("/Users/arpitgarg/test")
print file_list
#Rename all the files.
for file_name in file_list:
os.rename(file_name, file_name.translate(None, "0123456789")
print file_name
if __name__ == '__main__':
rename_files()
答案 0 :(得分:0)
file_names函数不包含正确的缩进语句。 if 名称 ==' main '有条件的。此外,os.rename函数调用缺少右括号。下次尝试使用IDE,比如pyCharm。它将突出显示这些语法错误。
答案 1 :(得分:0)
在寻求帮助时,请向我们提供必要的信息以帮助..在这种情况下是实际的追溯。
如前所述,缩进是一个主要错误。 Python使用空格来区分代码块。 http://en.wikipedia.org/wiki/Python_syntax_and_semantics#Indentation
我建议使用PyCharm,如前所述,但它是一个记忆猪。如果在较旧的计算机上运行,我建议使用Notepad ++或PyScripter。
答案 2 :(得分:0)
我怀疑跟踪错误是'找不到指定的文件',如果是这样你的py脚本需要知道要重命名的文件的位置;导致它不在当前的工作目录中。 你必须添加:
os.chdir('the exact path to files to be renamed')
在for循环之前