打开文件的代码有什么问题?
我试着用这段代码在Python中打开一个文件:
f = open("/Desktop/temp/myfile.txt","file1")
但是没成功。我觉得这是因为我没有指定正确的路径。那我该怎么解决这个问题呢?
相关问题:
8 个回答
4
首先,第二个参数是权限设置:用“r”表示可以读取,用“w”表示可以写入,用“a”表示可以追加内容。“file1”这个东西不应该出现在这里。
11
这个写法不对,因为你用错了open的语法。
在解释器的提示符下试试这个:
>>> help(open)
Help on built-in function open in module __builtin__:
open(...)
open(name[, mode[, buffering]]) -> file object
Open a file using the file() type, returns a file object.
这里的第二个参数是打开文件的模式。你可以快速查看一下文档,然后我们可以试试这个:
f = open("/Desktop/temp/myfile.txt","r")
10
编辑:哦,对了,你的第二个参数是错的。我都没注意到这一点 :)
在Python中,它会根据你告诉它的地方去找文件。如果你在 /home/malcmcmul 这个文件夹里打开解释器,那么这个文件夹就是当前活动的目录。
如果你指定了一个路径,Python就会去那个地方找文件。你确定 /Desktop/temp 是一个有效的路径吗?我不知道有多少系统会把 /Desktop 当成根文件夹。
这里有一些例子:
如果我有一个文件: /home/bartek/file1.txt
然后我在目录
/home/bartek/里输入python来打开解释器这样可以正常找到文件:
f = open("file1.txt", "r")但这样就不行了:
f = open("some_other_file.txt", "r"),因为那个文件在其他目录里。只要我指定正确的路径,这样就可以了:
f = open("/home/media/a_real_file.txt", "r")