【问题标题】:i want to write contents of my variable into a file我想将变量的内容写入文件
【发布时间】:2016-05-30 18:31:53
【问题描述】:

我已使用 Python 将 curl 命令的输出存储到字符串变量中。现在我想把它转移到一个文件中。你能帮帮我吗?

我的字符串变量如下

>>> print result
health status index                      pri rep docs.count docs.deleted store.size pri.store.size 
yellow open   logstash-xxx-2016.05.18     5   1    1869483            0    477.9mb        477.9mb 
yellow open   logstash-xxx-2016.05.17     5   1     632263            0    158.8mb        158.8mb 
yellow open   logstash-xxx-2016.05.19     5   1    1534771            0    386.9mb        386.9mb
  1. 我想将此内容存储在一个文件中,并且

  2. 仅从每一行中提取 logstash-xxx-2016.05.18 并将其仅写入另一个文件。

【问题讨论】:

  • 你试过什么?你想保存到什么格式的文件?你到底想写什么到另一个文件?
  • 您可以使用f.open(file_to_write_to, 'w')f.write(string_to_print) 将字符串打印到文件中。有关更多信息,请参阅文档:docs.python.org/3/tutorial/… 如果您需要更具体的帮助,您应该提出更具体的问题。
  • @shaheen: evryone 喜欢提供帮助,当您向我们展示代码时,请记住在 textarea 中缩进 4 个空格,以便全世界愿意提供帮助的人都可以阅读。而以上两个cmet已经是IMO充满了很好的暗示
  • 感谢您的回复。我想将上面的打印结果存储到文本文件中..f.write(string_to_print) 将保存我们提供给文件的任何字符串,但我的要求是我想存储我存储在变量“result”中的 curl 命令的输出到一个文件。
  • date = datetime.datetime.strptime(match.group(), '%Y.%m.%d').date() 我在我的python代码中使用过这个,看起来不像使用 python 2.4.3 版本。你能建议我吗,我可以在 2.4.3 中使用什么来代替这个

标签: python string text-files


【解决方案1】:

这会将结果写入名为“write_file.txt”的文件,并将匹配“logstash-xxx-xxxx.xx.xx”的字符串逐行写入名为“write_logs.txt”的文件中:

result = """health status index                      pri rep docs.count docs.deleted store.size pri.store.size 
yellow open   logstash-xxx-2016.05.18     5   1    1869483            0    477.9mb        477.9mb 
yellow open   logstash-xxx-2016.05.17     5   1     632263            0    158.8mb        158.8mb 
yellow open   logstash-xxx-2016.05.19     5   1    1534771            0    386.9mb        386.9mb"""

logs_index = [i for i in range(len(result)) if result.startswith('logstash', i)]

logs = [result[i:i + 23] for i in logs_index]

with open('write_file.txt', 'w') as f:
    f.write(result)

with open('write_logs.txt', 'a') as f:
    for l in logs:
        f.write(l + '\n')

【讨论】:

    猜你喜欢
    • 2012-07-22
    • 1970-01-01
    • 1970-01-01
    • 2011-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-01
    相关资源
    最近更新 更多