【问题标题】:Write multiple text files to the directory in Python将多个文本文件写入Python中的目录
【发布时间】:2018-08-04 04:49:19
【问题描述】:

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

部分代码如下:

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 2. 我刚刚创建了一个新路径并将文本写入其中。我用这个方法: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))

【问题讨论】:

  • 您只需在open 语句中的文件名前添加路径。
  • @usr2564301 你介意给我举个例子吗?
  • open("yourpath/%s" %docID

标签: python xml


【解决方案1】:

你可以框出文件路径来像打开一样

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

【讨论】:

  • 谢谢!但我认为这仅适用于一个文件...我仍在尝试
【解决方案2】:

假设您在主目录 (~/) 中有所有文本文件,并且您想将它们移动到 /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 文件并从主目录中删除文件(假设您从主目录运行此操作)

【讨论】:

  • 感谢您的回答,但我认为我的代码中可能还有其他问题,删除功能不起作用...我仍在尝试..
  • 你在导入操作系统吗?
  • 我确实包含它。 :|
  • 感谢您的帮助!我找出。我没有使用“copyfile”,而是使用了副本。参考在这里:stackoverflow.com/a/45126659/9387211。这允许我指定一个文件夹作为目的地。
  • 啊哈,我明白了。我总是将文件从路径/到/旧/文件名复制到路径/到/新/文件/名称。而且我还没有在控制台中测试过这段代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多