Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python使用open()在特定目录中创建文件_Python - Fatal编程技术网

Python使用open()在特定目录中创建文件

Python使用open()在特定目录中创建文件,python,Python,我的代码: boyka = "hello" f = open("~/Desktop/" + boyka + ".txt", "a") f.write(boyka) f.close 结果: IOError: [Errno 2] No such file or directory: '~/Desktop/hello.txt' 脚本不应该创建文件,因为它是一个文件吗?如何修复代码 我正在使用Ubuntu。打开功能不会自动将~扩展到用户的主目录。相反,它试图在一个目录中创建一个与该名称完全相同的名称

我的代码:

boyka = "hello"
f = open("~/Desktop/" + boyka + ".txt", "a")
f.write(boyka)
f.close
结果:

IOError: [Errno 2] No such file or directory: '~/Desktop/hello.txt'
脚本不应该创建文件,因为它是一个文件吗?如何修复代码

我正在使用Ubuntu。

打开功能不会自动将~扩展到用户的主目录。相反,它试图在一个目录中创建一个与该名称完全相同的名称。我猜那不是你想要的。在这种情况下,应使用-,将~扩展到用户的主目录。范例-

import os.path
f = open(os.path.expanduser(os.path.join("~/Desktop",boyka + ".txt")), "a")
我还建议您使用os.path.join创建路径,而不是手动创建路径。

打开功能不会自动将~扩展到用户主目录。相反,它试图在一个目录中创建一个与该名称完全相同的名称。我猜那不是你想要的。在这种情况下,应使用-,将~扩展到用户的主目录。范例-

import os.path
f = open(os.path.expanduser(os.path.join("~/Desktop",boyka + ".txt")), "a")

我还建议您使用os.path.join创建路径,而不是手动创建路径。

如果问题无法重现,如NightShadeQueen所说,问题必须与路径~/Desktop/@NightShadeQueen和m69有关,问题已解决。谢谢你,如果问题不能重现,就像NightShadeQueen所说的,问题必须是路径~/Desktop/@NightShadeQueen和m69,问题解决了。谢谢你,汉克斯。工作就像我想要的那样。就像我希望的那样工作