我python的默认目录在F盘,要run的代码在C盘download目录下
但是python工作的脚本又在C盘另一个目录
我试了一下os.gwd(),没办法返回代码块所在目录
FileNotFoundError: [Errno 2] No such file or directory: 'C:\Users\greed\AppData\Local\Temp
怎么解决啊
参考GPT和自己的思路:你可以使用 os 模块的 path 模块来获取 py 文件的路径。如下所示:
import os
# 获取当前 py 文件的绝对路径
path = os.path.abspath(__file__)
# 获取当前 py 文件的目录路径
directory = os.path.dirname(path)
# 获取要 run 的代码所在目录的路径
code_directory = "C:/download"
# 切换到要 run 的代码所在目录
os.chdir(code_directory)
# 获取要 run 的代码的文件名
code_filename = "example.py"
# 拼接要 run 的代码的完整路径
code_path = os.path.join(code_directory, code_filename)
# 切换回当前 py 文件所在目录
os.chdir(directory)
# 执行要 run 的代码
exec(open(code_path).read())
这样就可以获取 py 文件的路径并成功运行代码了。
参考GPT和自己的思路:要获取运行的代码所在的目录,可以使用如下代码:
import os
script_dir = os.path.dirname(os.path.abspath(__file__))
print(script_dir)
上面的代码中,__file__
代表当前脚本的绝对路径,os.path.abspath
方法可以将其转换为绝对路径,os.path.dirname
方法可以取出所在的目录。
如果你要获取的是当前工作目录,而非代码所在目录,可以使用os.getcwd()
方法。但是需要注意,当前工作目录并不一定是代码所在的目录,因此在这种情况下使用os.getcwd()
可能会导致错误。