如何使用python在指定位置创建文本文件

时间:2015-09-22 11:16:59

标签: python

我正在尝试使用python创建一个文本文件。这是我的代码 -

import sys
import os

str1="a1.txt"
file1="Documents/Inbox/"
completeName=file1+str1
name1=os.path.abspath(completeName)
myfile = open(name1, 'w')

我想在我的主目录中的文档文件夹中保存文件a1.txt。我使用上面的代码得到以下错误 -

Traceback (most recent call last):
  File "filesave.py", line 8, in <module>
    myfile = open(name1, 'w')
FileNotFoundError: [Errno 2] No such file or directory: '/home/pulkit/Documents/Documents/Inbox/a1.txt'

4 个答案:

答案 0 :(得分:3)

此代码显示如何检查路径是否存在,并展开~以访问运行脚本的用户的主目录。

#!/usr/bin/python
import os
dpath=os.path.join(os.path.expanduser("~"),"Documents","Inbox")
if not os.path.exists(dpath):
    os.makedirs(dpath)
fpath=os.path.join(dpath,"a1.txt")
open(fpath,"w").write("what ever you want")

答案 1 :(得分:2)

os.path.abspath()不知道您想要该文件存在于哪个目录中 - 它只使用当前目录,当您获得该目录时,该目录似乎是$HOME/Documents回溯。

无论

  1. 始终从您的主目录运行脚本(untenable);或
  2. 在脚本中指定显式绝对路径;或
  3. 更改逻辑,以便脚本不关心它的运行位置 - 通常这是通过始终在当前目录中创建文件来完成的。或者只需打印到标准输出,让用户弄清楚如何处理输出。

答案 2 :(得分:0)

在您的情况下,省略&#39; Documents /&#39;从您的变量file1设置如:

likeControlStyle (FBSDKLikeControlStyleStandard, FBSDKLikeControlStyleBoxCount)

答案 3 :(得分:0)

查看错误

  

FileNotFoundError:[Errno 2]没有这样的文件或目录:'/ home /pulkit/Documents/Documents/Inbox/a1.txt'

显然,评估的路径是:

/home/pulkit/Documents/Documents/Inbox/a1.txt

但你有,

/home/pulkit/Documents/Inbox/a1.txt

所以,将file1="Documents/Inbox/"更改为file1="Inbox/"