Python 迭代相同长度的行文件中每个字符串的索引,同时从各个索引生成每个值的新字符串
我有一个包含序列列表的数据文件,每个序列有6个氨基酸长。 如下所示:Python 迭代相同长度的行文件中每个字符串的索引,同时从各个索引生成每个值的新字符串,python,loops,for-loop,while-loop,Python,Loops,For Loop,While Loop,我有一个包含序列列表的数据文件,每个序列有6个氨基酸长。 如下所示: QDFRGETW AQAVRSSS ANGVELRD 我想基本上将此文件转换为: QAN DQN FAG RVV GRE .... WSD 使用简单的for循环和while循环 以下是我尝试过的有效方法 i2 = '' with open('datafile','r') as f: for line in f: i2 += line[2] 我要做的是遍历索引并将每个新字符串添加到字典中。所以我决定试
QDFRGETW
AQAVRSSS
ANGVELRD
我想基本上将此文件转换为:
QAN
DQN
FAG
RVV
GRE
....
WSD
使用简单的for
循环和while
循环
以下是我尝试过的有效方法
i2 = ''
with open('datafile','r') as f:
for line in f:
i2 += line[2]
我要做的是遍历索引并将每个新字符串添加到字典中。所以我决定试试这个
Dict = {}
i = 0
seq = ''
with open ('datafile','r') as f:
while i <= 7:
for line in f:
seq += line[i]
Dict[i] = seq
i += 1
If还返回QAN,而不是WSD,正如我所想的那样。因此,while循环存在一个问题。有什么想法吗?下面的代码应该可以工作
input_file.txt
是包含文本的文件。我认为,预期输出的第一行必须是QAA
for line in zip(*open('input_file.txt').readlines()):
print(''.join(line))
输出:
QAA
DQN
FAG
RVV
GRE
ESL
TSR
WSD
第一个垂直提取的字符串不应该是
QAA
?很好的解决方案,只是要指出-我们也可以在没有readLines()的情况下进行迭代。
QAA
DQN
FAG
RVV
GRE
ESL
TSR
WSD