Python中os.chdir传入变量参数返回带双斜杠路径报错如何解决?
os.chdir传入变量参数报错解决方案
错误原因
os.chdir()的入参要求为目录路径,你当前传入的scriptpath是当前运行脚本自身的完整文件路径,不符合入参要求,因此触发报错。
修复代码
你需要先提取脚本文件对应的父目录路径,再传入os.chdir()即可:
import os scriptpath = os.path.realpath(__file__) # 提取脚本所在的父目录 script_parent_dir = os.path.dirname(scriptpath) os.chdir(script_parent_dir)
补充说明
os.chdir()没有返回值,你原有代码中将os.chdir()的执行结果赋值给codeScriptPath的操作没有实际作用,执行os.chdir()后会直接修改当前进程的工作目录- 如果你使用Python 3.4及以上版本,也可以用
pathlib简化写法:
from pathlib import Path import os os.chdir(Path(__file__).resolve().parent)
内容的提问来源于stack exchange,提问作者yourfriendlyprogrammer
相关产品推荐
相关产品推荐

