我的python项目有2个文件。我创建了一个名为files
的文件夹,所以当用户在文本编辑器中写入内容时,它将其保存到该文件夹中,然后当用户打开textviewer时,他们键入该文件名并在{{1}中查找它}} 目录。我怎么能这样做?
文本编辑器代码:
files
文字查看器代码:
def edit():
os.system('cls' if os.name == 'nt' else 'clear')
print ("EDIT")
print ("-------------")
print ("Note: Naming this current document the same as a different document will replace the other document with this one.")
filename = input("Plese enter a file name.")
file = open(filename, "w")
print ("FILE: " +filename+".")
lines = get_lines()
file.write('\n'.join(lines))
def get_lines():
print("Enter 'stop' to end.")
lines = []
line = input()
while line != 'stop':
lines.append(line)
line = input()
return lines
答案 0 :(得分:2)
如果您不希望将filename
视为相对于当前工作目录,则应在将其传递给open
之前将其转换为更具体的绝对路径。使用os.path.join
以独立于平台的方式将目录名称和文件名组合在一起:
directory = "/media/GENERAL/Projects/files"
filename = input("Plese enter a file name.")
file = open(os.path.join(directory, filename), "w")
与此问题无关,但涉及代码的相同部分,我建议使用with
语句来处理您的文件(with open(whatever) as file:
)。有关更多详细信息,请参阅the docs。