如何让python在不同的位置保存文件?

时间:2015-03-31 20:19:12

标签: python

我的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

1 个答案:

答案 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