在Python中创建文件的麻烦

时间:2014-03-31 20:40:20

标签: python

我正在创建一个程序,您可以在其中创建一个文本文件,并在终端中运行ls以显示该文件夹中的文件。我的问题是我有2个文件夹。一个是程序本身,一个是我创建的文本文件。默认情况下,文本文件保存到包含该程序的文件夹。这是我的代码

#!/usr/bin/python

import time
import termcolor
import os
os.system("cd /home/marc/QuickJotTexts && ls")
print ""

title = raw_input("What Will Your Title Be? ")
print""

print "Your Title Is", title
text_file = open(title, "w")
print ""

text = raw_input("What Do You Want To Write In This Document? ")

text_file.write(text)
text_file.close()

text_file = open(title, "r")

print "YOU WROTE", text_file.read()

nub = raw_input("Is This Correct? y/n ")

if nub == "y":
    print "Ok, Bye :)"
    text_file.close()
if nub == "n":
    os.system("rm", title)

这只是我代码的一小部分。

2 个答案:

答案 0 :(得分:1)

而不是

text_file = open(title, "w")

打开当前目录中的文件,您应该在

中指定要保存的路径
SAVEDIR = "/home/marc/saves"
text_file = open(os.path.join(SAVEDIR, title), "w")

答案 1 :(得分:0)

os.system()独立于python解释器执行。解释器实际上并没有使用该命令更改其工作目录,而是fires it off as a background process并报告退出代码(希望,' 0')。

您正在寻找的是os.chdir()

this SO article已充分解决了您的问题。