大家好,我有一个包含一些随机信息的文件,但我只想要对我来说很重要的部分。
name: Zack
age: 17
As Mixed: Zack:17
Subjects opted : 3
Subject #1: Arts
name: Mike
age: 15
As Mixed: Mike:15
Subjects opted : 3
Subject #1: Arts
上面是我的文本文件的示例,我希望将 Zack:17 和 Mike:15 部分写入文本文件,并忽略所有其他内容。 / p>
我观看了一些YouTube视频,并在python中遇到了split语句,但这没用。
我的代码示例
with open("/home/ninja/Desktop/raw.txt","r") as raw:
for rec in raw:
print rec.split('As Mixed: ')[0]
这不起作用。 任何帮助都会真正帮助我完成这个项目。 谢谢。
答案 0 :(得分:1)
您可以在As Mixed
处拆分数据,并且仅获取content = [i.strip('\n').split(': ') for i in open('filename.txt')]
results = [b for a, b in content if a.startswith('As Mixed')]
参数
['Zack:17', 'Mike:15']
输出:
with open('filename.txt', 'w') as f:
for i in results:
f.write(f'{i}\n')
要将结果写入文件:
/**
* Get subdocuments belonging to this documentset with intermediate model
*/
public function subdocuments()
{
return $this->hasManyThrough(
docflow_subdocuments::class,
docflow_subsets::class,
'docflow_documentset_id',
'docflow_subset_id'
);
}
答案 1 :(得分:0)
尝试一下
(Mike|Zack):(\w*)
这使用正则表达式来查找所需的值,基本上:
先找到Mike或Zack,然后再找到 <nav id="navbar" class="navbar navbar-default">
<div class="container">
<ul class="nav navbar-nav">
<li class="nav-item"><a href="#">1</a></li>
<li class="nav-item"><a href="#">2</a></li>
<li class="nav-item"><a href="#">3</a></li>
<li class="nav-item"><a href="#">4</a></li>
<li class="nav-item"><a href="#">5</a></li>
<li class="nav-item"><a href="#">6</a></li>
<li class="nav-item"><a href="#">7</a></li>
</ul>
</div>
</nav>
个字符,然后再找到尽可能多的单词。
要了解有关正则表达式的更多信息,请访问以下网站:https://docs.python.org/3.4/library/re.html