我可以在python中格式化txt文件

时间:2015-09-14 21:34:12

标签: python text output

现在很高兴不要误解我,但我只是好奇我是否可以获得一个文本文件,然后找出该文本文件中有多少行被写入,从而使用该数字打印每几行的选择性数据。我也可以使用python在文本文件中找到均匀分开的特定单词,例如在文本文件中,如果所有内容都是这样写的

名产品:>本

分数产品:> 2

名产品:>乙

分数产品:> 8

名产品:>詹姆斯

分数产品:> 0

我是否可以搜索文本文件,以获取字符串' name:>' (然后保存它前面的任何东西,如果可能的话,保存到变量)或看到它们都是等间隔的,我可以将一个人的特定分数保存到带有他们名字的变量(因为前面的所有内容都是一样的间隔),而不必打开txt文件。

如果所有这些听起来完全不可能,或者你们中的任何一个人已经收到任何关于我在谈论什么的模糊想法(在这种情况下我很敬畏你从这个措辞严谨的例子中理解你的能力),请给我任何想法或关于如何格式化文本文件以创建变量的想法。

如果以上所有内容看起来过于复杂,那么有人请告诉我,可以分析文本文件中有多少行已经写好了,从那里我对如何创建程序有一个模糊的想法。

2 个答案:

答案 0 :(得分:0)

您可以使用正则表达式(RE)将文本文件作为字符串进行搜索,然后找出要在文本文件中更改现有值的位置并进行编写。

https://docs.python.org/2/library/re.html

答案 1 :(得分:0)

要做您要问的事情,我将亲自使用内置的re模块,如下所示:

import re
with open("foo.txt", "r") as foo:
    contents = foo.read()

results = re.search("foo-bar", contents).group()
print(results)

那应该可以满足您的需求。