Python open("file", "w+") 没有创建不存在的文件

Python open("file", "w+") not creating a nonexistent file

Stack Overflow 上也存在类似的问题。我读过这样的问题,但他们没有解决我的问题。下面的简单代码会导致文件未找到错误。我是 运行 Python 3.9.1 Mac OS X 11.4

任何人都可以建议后续步骤来解决此问题的原因吗?

with open("/Users/root/test/test.txt", "w+") as f:
    f.write("test")
Traceback (most recent call last):
  File "/Users/root1/PycharmProjects/web_crawler/test.py", line 1, in <module>
    with open("/Users/root/test/test.txt", "w+") as f:
FileNotFoundError: [Errno 2] No such file or directory: '/Users/root/test/test.txt'

**有时编译器无法找到您在 open() 函数中插入的任何路径。届时您可以默认保存在 IDE 保存程序的文件夹中。以下语法可能对您有所帮助 **

with open('test.txt', 'w+') as f:
     f.write("xyz")

**此处 text.txt 将默认保存在 IDE 存储您编写的程序的文件夹中。您可以检查该文件夹是否符合 **

您对初始评论 post 阐明了您需要发生的事情。
下面假设

  • 目录Users/root1/存在
  • 您正在尝试在其中创建一个新的子目录+文件
import os

# Wrap this in a loop if you need
new_dir = 'test' # The variable directory name
new_path = 'Users/root1/' + new_dir + "/"
os.makedirs(os.path.dirname(new_path), exist_ok=True) # Create new dir 'Users/root1/${new_dir}/

with open(new_path + "test.txt", "w+") as f:
    # Create new file in afore created directory
    f.write("test")

这会根据变量 new_dir 创建一个新目录,并在其中创建文件 test.txt