这是我的代码,它按预期执行良好。我的问题是," file_name"即使它没有在代码中先前定义,也不会抛出错误。我确认它不是关键字。
import os
def rename_files():
file_list = os.listdir(r"C:\\Users\\Abhilash\\Documents\\Udacity\\Prank")
print file_list
saved_path = os.getcwd()
print ("Current Working Directory is "+saved_path)
os.chdir(r"C:\\Users\\Abhilash\\Documents\\Udacity\\Prank")
for file_name in file_list:
os.rename(file_name,file_name.translate(None, "0123456789"))
rename_files()
答案 0 :(得分:6)
你确定了它,你在这里指定它:
for file_name in file_list:
for
循环绑定名称。
分配不是在Python中“定义”名称的唯一方法。其他方式是:
for <name> in something:
循环中的目标,与示例代码一样。with contextmanager as <name>:
或except Exception as <name>:
声明中使用名称作为目标。import <name>
,from something import <name>
或import something as <name>
都指定了该名称。 from something import *
创建了一系列名称。请参阅Python执行模型文档的Naming and Binding section。