将多个文本文件写入Python

时间:2018-02-24 05:04:39

标签: python xml

我正在努力将文本保存到不同的文件中。所以,现在我已经创建了几个文件,每个文本文件中都有一些文本/段落。现在,我只想将这些文件保存到目录中。我已经创建了一个自定义目录,但现在它是空的。我想将这些文本文件保存到我的目录中。

部分代码如下:

for doc in root:
    docID = doc.find('DOCID').text.strip() 
    text = doc.find('TEXT').text,strip() 
    f = open("%s" %docID, 'w') 
    f.write(str(text))

现在,我创建了包含文本的所有文件。我现在还有一个空文件夹/目录。我只是不知道如何将这些文件放入目录。 我很感激。

=============================================== ========================= [解决]谢谢大家的帮助!我想到了。我只是在这里编辑我的摘要。我遇到了一些问题。 1.我的docID保存为元组。我需要转换为字符串而不需要任何额外的符号。这是我使用的参考:https://stackoverflow.com/a/17426417/9387211 我刚刚创建了一条新路径并将文本写入其中。我使用这种方法:https://stackoverflow.com/a/8024254/9387211

现在,我可以分享我的更新代码,这里没有更多问题。再次感谢大家!

for doc in root:
   docID = doc.find('DOCID').text.strip()
   did = ''.join(map(str,docID))
   text = doc.find('TEXT').text,strip() 
   txt = ''.join(map(str,docID))
   filename = os.path.join(dst_folder_path, did)
   f = open(filename, 'w') 
   f.write(str(text))

2 个答案:

答案 0 :(得分:0)

假设您拥有主目录(〜/)中的所有文本文件,并且您想将它们移动到/ path / to / dir文件夹。

from shutil import copyfile
import os
docid_list = ['docid-1', 'docid-2']
for did in docid_list:
    copyfile(did, /path/to/folder)
    os.remove(did)

它会将/ path / to / folder路径中的docid文件复制并从主目录中删除文件(假设你从home dir运行此操作)

答案 1 :(得分:0)

您可以将文件路径设置为打开状态,如

doc_file = open(<file path>, 'w')