猿问

如果不存在,则Python中的open()不会创建文件

如果文件以读/写方式打开,或者以不存在的方式创建,然后以读/写方式打开,最好的方法是什么?根据我的阅读,file = open('myfile.dat', 'rw')应该这样做吗?


它对我不起作用(Python 2.6.2),我想知道这是否是版本问题,或者不应该那样工作或做什么。


最重要的是,我只需要解决这个问题。我对其他东西很好奇,但是我所需要的只是做开始部分的好方法。


更新:封闭目录是可由用户和组而不是其他人(我在Linux系统上...因此就是权限775)可写的,确切的错误是:


IOError:没有这样的文件或目录。


月关宝盒
浏览 9509回答 3
3回答

汪汪一只猫

您应该使用open以下w+模式:file = open('myfile.dat', 'w+')

拉莫斯之舞

好的做法是使用以下方法:import oswritepath = 'some/path/to/file.txt'mode = 'a' if os.path.exists(writepath) else 'w'with open(writepath, mode) as f:    f.write('Hello, world!\n')
随时随地看视频慕课网APP
我要回答