Windows10Pro下Python os.listdir()路径参数设置问题咨询
在Windows 10 Pro中正确使用Python os.listdir()的路径参数方法
相对路径的正确使用
首先要明确Python的当前工作目录(CWD),可以用os.getcwd()查看当前脚本运行时所在的目录。
- 要访问当前目录的上一级目录下的子目录,比如当前在
C:\Users\sparky\Projects,想访问C:\Users\sparky\Documents,需要写完整的相对路径:
只写import os os.listdir("../Documents") # 正确:../ 表示上一级,再加上目标子目录名../只会列出上一级目录的内容,不是直接切换到其他目录。 - 访问当前目录的同级子目录,直接写目录名即可:
os.listdir("test_files") # 列出当前目录下test_files文件夹的内容
跨驱动器的绝对路径写法
Windows下跨驱动器访问必须使用完整绝对路径,注意两种正确的字符串写法:
- 转义反斜杠:因为Python中反斜杠是转义字符,所以要写两个反斜杠表示路径分隔符:
os.listdir("C:\\Users\\sparky\\Desktop") - 原始字符串(推荐):在路径字符串前加
r,避免转义问题:os.listdir(r"C:\Users\sparky\Desktop")
- 注意:直接写盘符(如
os.listdir("D:"))不会指向驱动器根目录,而是指向该驱动器的当前工作目录,如果要访问根目录,必须加上斜杠:os.listdir(r"D:\") # 正确列出D盘根目录内容
避免路径错误的实用技巧
- 用
os.path模块拼接路径,自动适配Windows的路径分隔符,避免手动写分隔符出错:target_path = os.path.join(os.getcwd(), "..", "Downloads") os.listdir(target_path) - 先验证路径是否正确:用
os.path.abspath(相对路径)打印出绝对路径,确认是否是你要访问的目录:print(os.path.abspath("../Documents")) # 输出对应的绝对路径,检查是否正确 - 检查目标目录是否存在:用
os.path.exists(path)提前验证,避免因目录不存在报错:path = r"C:\Users\sparky\Pictures" if os.path.exists(path): os.listdir(path) else: print("目录不存在")
内容的提问来源于stack exchange,提问作者sparky210
相关产品推荐
相关产品推荐

