我试图列出文件目录中的文件名,当我运行代码时,我得到这个错误:“行后续字符的意外字符”
我在路径前键入了“r”但仍然没有工作。
import os def listig_files(dirname):os.scandir(r“C:\ Users \ migue \ Documents \”),用于输入: 如果不是entry.name.startswith('。')和entry.is_file():print(entry.name)我做了更正后得到以下结果:
runfile('C:/ Users / migue / Downloads / Python Scripts / rename files from list.py',wdir ='C:/ Users / migue / Downloads / Python Scripts')
引起问题的那条线是
def listig_files(C:\Users\migue\Documents):
在Python中,\
是“行继续符”,意思是你可以用它来打破多行的语句。但它必须是一行中的最后一个字符。
这就是为什么你得到一个有点无益的信息 - 你有一个续行字符\
后跟另一个字符。
函数定义应该包含该位置的参数名称,然后您可以在函数中使用该名称。
import os
def listing_files(path_name):
with os.scandir("r", path_name)as:
for entry in it:
if not entry.name.startswith('.') and entry.is_file():
print(entry.name)
然后你可以调用函数
listing_files(r"C:\Users\migue\Documents") # raw string or escapes for \ needed
注意路径周围的"..."
,同时将其传递给函数。
import os
rome=r'C:\Users\Migue\Documents'
def listing_files(r,rome):
with os.scandir(r'C:\Users\Migue\Documents') as rome:
for entry in rome:
if not entry.name.startswith('.') and entry.is_file():
print(entry.name)
listing_files('r', rome)
改变路径:
os.scandir(R “C:\用户\ migue \文件”)