Python中文
首页
教程
问答
标签
搜索
登录
注册
如何用具有特定图案的指定线条替换线条?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个文本文件如下:</p> <pre><code>geo.txt Receptor Name:I151T.B99990002_mus.pdbqt Liang Name: LIGAND 1 Using random seed: 1896818552 mode | affinity | dist from best mode | (kcal/mol) | rmsd l.b.| rmsd u.b. -----+------------+----------+---------- 1 -10.7 0.000 0.000 2 -10.4 1.859 3.037 3 -10.1 1.992 3.474 Receptor Name: I151T.B99990001_mus.pdbqt Liang Name: LIGAND 1 Using random seed: 1896818552 mode | affinity | dist from best mode | (kcal/mol) | rmsd l.b.| rmsd u.b. -----+------------+----------+---------- 1 -9.5 0.000 0.000 2 -9.4 2.083 3.784 3 -9.0 2.471 8.360 4 -9.0 1.493 3.523 </code></pre> <p>在上面的文件中,我想提取每个具有模式(Receptor Name:)的行,并将这些行与其对应的值相加。你知道吗</p> <p>我尝试过:</p> <pre><code>import os import re h=open("/Users/geoList.txt","r") for i in h: if re.match(r'\s\s\s\d+', i) or i.startswith("Receptor Name:"): print i.replace("\n","") </code></pre> <p>我得到如下输出:</p> <pre><code>Receptor Name: I151T.B99990002_mus.pdbqt 1 -10.7 0.000 0.000 2 -10.4 1.859 3.037 3 -10.1 1.992 3.474 Receptor Name:I151T.B99990001_mus.pdbqt 1 -9.5 0.000 0.000 2 -9.4 2.083 3.784 3 -9.0 2.471 8.360 4 -9.0 1.493 3.523 </code></pre> <p>但是在这里,我不知道如何将具有(Receptor Name:)的线与其各自的值连接起来。你知道吗</p> <p>例如:预期的输出文件应如下所示:</p> <pre><code>FIRST PATTERN MATCH: with corresponding values: ----------------------------------------------- Receptor Name:I151T.B99990002_mus.pdbqt 1 -10.7 0.000 0.000 Receptor Name:I151T.B99990002_mus.pdbqt 2 -10.4 1.859 3.037 Receptor Name:I151T.B99990002_mus.pdbqt 3 -10.1 1.992 3.474 SECOND PATTERN MATCH: with corresponding values ----------------------------------------------- Receptor Name: I151T.B99990001_mus.pdbqt 1 -9.5 0.000 0.000 Receptor Name: I151T.B99990001_mus.pdbqt 2 -9.4 2.083 3.784 Receptor Name: I151T.B99990001_mus.pdbqt 3 -9.0 2.471 8.360 Receptor Name: I151T.B99990001_mus.pdbqt 4 -9.0 1.493 3.523 </code></pre> <p>先谢谢</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>您可以这样做(您只需要存储带有“Receptor”的行):</p> <pre><code>>>> for line in h: ... if line.startswith('Receptor Name:'): ... prefix = line ... elif re.search(r'^\s+\d', line): ... print prefix + ' ' + line.strip() </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
Django:。是不是“超级用户”字段不起作用
3 回答
Django:'DeleteQuery'对象没有属性'add'
9 回答
Django:'ModelForm'对象没有属性
1 回答
Django:'python manage.py runserver'返回'TypeError:'WindowsPath'类型的对象没有len()
3 回答
Django:'Python管理.pysyncdb'不创建我的架构表
5 回答
Django:'Python管理.py迁移“耗时数小时(和其他奇怪的行为)
7 回答
Django:'readonly'属性在我的ModelForm上不起作用
4 回答
Django:'RegisterEmployeeView'对象没有属性'object'
6 回答
Django:'str'对象没有属性'get'
5 回答
Django:'创建' 不能被指定为Order模型表单中的值,因为它是一个不可编辑的字段
7 回答
Django:“'QuerySet'类型的对象不是JSON可序列化的”
7 回答
Django:“'utf8'编解码器无法解码位置19983中的字节0xe9:无效的连续字节”,加载临时文件时
10 回答
Django:“<…>”需要有一个字段“id”的值,然后才能使用这个manytomy关系
6 回答
Django:“AnonymousUser”对象没有“get_full_name”属性
4 回答
Django:“ascii”编解码器无法解码位置1035中的字节0xc3:序号不在范围内(128)
3 回答
Django:“BaseTable”对象不支持索引
7 回答
Django:“collections.OrderedDict”对象不可调用
5 回答
Django:“Country”对象没有属性“all”
8 回答
Django:“Data”对象没有属性“save”
3 回答
Django:“datetime”类型的对象不是JSON serializab
1 回答