gpt4 book ai didi

python - 如何解决Python中的操作系统模块路径错误

转载 作者:行者123 更新时间:2023-12-01 09:30:52 25 4
gpt4 key购买 nike

我从上周开始使用Python。我正在学习模块,并使用 os 模块编写了一个程序,该程序会询问用户他们想要访问的磁盘驱动器并打印该驱动器内的所有文件夹,并再次要求用户在其中选择一个文件夹并访问该文件夹和过程重复进行。它工作正常,但它只访问顶级目录和其中的一个目录。发生错误后,提示该路径不存在,但实际上错误消息中显示的路径是有效的。请帮帮我。我的程序是:

import os
def fun(path1,path2):
p1=os.path.join(path1,path2)
os.chdir(p1)
print('currently in ',p1)
print('folders currently in this directories are:')
print(next(os.walk('.'))[1])
p2=input('which folder you wanna access among these:')
fun(p1,p2)
x=input('which drive you wanna access:')
fun(x,path2='')

最佳答案

不要os.chdir(),否则相对路径p1将无法在初始工作目录之外工作。

说明:假设您从 /home/you 开始,并且想要到达 /home/you/some/folder。第一步,您选择 some,当前目录更改为 /home/you/some,然后选择 folder,它会与some,因此您尝试从目录 /home/you/somechdir() 进入不存在的 some/folder

p1 传递给 os.walk():

def fun(path1,path2):
p1=os.path.join(path1,path2)
print('currently in ',p1)
print('folders currently in this directories are:')
print(next(os.walk(p1))[1])
p2=input('which folder you wanna access among these:')
fun(p1,p2)

关于python - 如何解决Python中的操作系统模块路径错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49981755/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com