为什么当我在 Python IDE (PyCharm) 中运行以下代码段时:
import os
from pathlib import Path
if os.path.isfile('shouldfail.txt'):
p = Path(__file__).parents[0]
p2 = Path(__file__).parents[2]
path_1 = str(p)
path_2 = str(p2)
List = open(path_1 + r"/shouldfail.txt").readlines()
List2 = open(path_2 + r"/postassembly/target/generatedShouldfail.txt").readlines()
它工作正常并返回所需的结果,但是当我通过命令行运行脚本时,出现错误:
File "Script.py", line 6, in <module>
p2 = Path(__file__).parents[2]
File "C:\Users\Bob\AppData\Local\Programs\Python\Python36\lib\pathlib.py", line 594, in __getitem__
raise IndexError(idx)
IndexError: 2
我在这里想念什么?还有一种更好/更简单的方法可以从我运行脚本的当前路径向上移动两个文件夹(在脚本内)?