为了账号安全,请及时绑定邮箱和手机立即绑定

Python open 不会根据文档创建文件

Python open 不会根据文档创建文件

拉风的咖菲猫 2022-10-05 16:58:50
我很难相信 python 在 2020 年仍然存在创建文件的问题......所以,我假设它是 windows 或我......这是带有输出的代码。我尝试了 w、w+、wt 模式,错误消息如下。使用 w, w+, wt 的全部意义在于如果文件不存在则创建该文件我已更改为使用 Path.touch,然后使用仅给出和错误输入的 a、a+ 模式import sysprint("Python version:")print (sys.version)import platformprint("Platform: {} - {} - {}".format(platform.system(), platform.release(), platform.version()))from pathlib import Pathoutput = 'hello world!'save_dir = Path.cwd().joinpath("./sw_out")if(save_dir.exists() == False):    save_dir.mkdir()    print("dir exists now: {}".format(save_dir.exists()))debug_file = save_dir.joinpath("my_debug.txt")#debug_file.touch(exist_ok=True)print(str(debug_file))with(open(debug_file), 'w+') as f:    f.write(output)f.close()Python version:3.7.6 | packaged by conda-forge | (default, Dec 26 2019, 23:30:11) [MSC v.1916 64 bit (AMD64)]Platform: Windows - 10 - 10.0.17763dir exists now: TrueC:\users\me\project\sw_out\my_debug.txt---------------------------------------------------------------------------FileNotFoundError                         Traceback (most recent call last)<ipython-input-19-447d2a994262> in <module>     16 #debug_file.touch(exist_ok=True)     17 print(str(debug_file))---> 18 with(open(str(debug_file)), 'w+') as f:     19     f.write(output)     20 f.close()FileNotFoundError: [Errno 2] No such file or directory: 'C:\\users\\me\\project\\sw_out\\my_debug.txt'
查看完整描述

3 回答

?
繁花如伊

TA贡献2012条经验 获得超12个赞

你这样做是错的。

改变这个:

with(open(debug_file), 'w+') as f:

至:

with(open(debug_file, 'w+')) as f:

这与以下内容相同:

with open(debug_file, 'w+') as f:


查看完整回答
反对 回复 2022-10-05
?
慕标琳琳

TA贡献1830条经验 获得超9个赞

简单的改变应该能让这个工作:


with open(debug_file, 'w+') as f:

    f.write(output)

f.close()


查看完整回答
反对 回复 2022-10-05
?
德玛西亚99

TA贡献1770条经验 获得超3个赞

试试这样:


#debug_file.touch(exist_ok=True)

print(str(debug_file))

with open(debug_file, 'w+') as f:

    f.write(output)

f.close()

这对我有用。


查看完整回答
反对 回复 2022-10-05
  • 3 回答
  • 0 关注
  • 118 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信