今天写一个程序的时候,总是报错
with open(path1, 'r', encoding="utf-8") as f:
OSError: [Errno 22] Invalid argument:
我就想,我明明是通过复制文件路径赋给这个变量的,为啥就会报错呢?
path1 = "D:\python_projects\ScienceCitation\datas\author_linking_pairs.txt" #copy的绝对路径
path2 = "D:/python_projects/ScienceCitation/datas/author_linking_pairs.txt" #将\改成/后
with open(path1, 'r', encoding="utf-8") as f:
for line in f:
print(1)
path1就是复制的路径,path2是将复制的路径中的斜杠\改成了斜杠/。
结果就是:
path1是错误的路径表示
path2是正确的路径表示
也就是所,可能在python里面,表示所属盘符关系需要用 / 而不是 \ 。
另外:除了绝对路径的表示方式,还有相对路径的表示方式,相对路径有时更加有用。