您好我正在尝试将文件位置表示为变量,因为最终脚本将在另一台计算机上运行。这是我试过的代码,然后是我得到的错误。在我看来,一些python如何添加“\”,这是导致问题。如果是这种情况,我如何让它不插入“\”?谢谢
F = 'C:\Documents and Settings\myfile.txt','r'
f = open(F)
和错误
TypeError: invalid file: ('C:\\Documents and Settings\\myfile.txt', 'r')
答案 0 :(得分:5)
来自文档:
试试这个:
F = r'C:\Documents and Settings\myfile.txt'
f = open(F, 'r')
关于“双反斜杠” - 您需要在字符串中转义反斜杠或使用r'string'
,请参阅:
E.g。试试这个:
>>> a = 'a\nb'
>>> print a
a
b
为了得到你所期望的,你需要这个:
>>> a = r'a\nb'
>>> print a
a\nb
或者这个:
>>> a = 'a\\nb'
>>> print a
a\nb
答案 1 :(得分:3)
尝试
f=open('C:\Documents and Settings\myfile.txt','r')
而不是使用变量F.你拥有它的方式'r'
是文件名的一部分,它不是。
答案 2 :(得分:1)
您应该这样做,而不是撰写/
或\
:
import os
F = os.path.join(
"C:",
os.path.join(
"Documents and Settings", myfile.txt
)
)
f = open(f, 'r')`
根据您的操作系统使用/
或\
。
(虽然如果你写C:/
,它必须意味着你想在Windows上运行你的代码......哼......)