我正在创建一个程序,您可以在其中创建一个文本文件,并在终端中运行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)
这只是我代码的一小部分。
答案 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已充分解决了您的问题。