Python中具有列表整数的多个循环的正确语法

2024-09-28 05:22:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我在做一个循环,基本上是

MyList = ['cttgaaat',attcggat',gtatcaag'...] 

for value in text_file:
     print(key_nucleotide_position) 

key\u位置是文本文件中的给定数字 把这样的东西还给我

In [1]: 1
        3
        5
        7
        ...

我在试一个类似这样的for循环

for value in MyList: 
     print(value[key_nucleotide_position])
     print('\n')

但是,不是打印我想要的,而是

t
t
t

g
c
t

a
g
a

t
t
g

我只得到这个

t

t

g 

当我把一个for循环放到另一个for循环中时,我成功地让它工作了,但这只给了我一个这种格式的超长核苷酸序列(497行)

a
t
t
g
g
c
g
...

我知道如何分析,但不知道如何以我想要的方式拆分它,也就是每91个核苷酸-即使这样,返回值对于我应该得到的核苷酸数量也没有意义。你知道吗

任何帮助都将不胜感激。你知道吗


Tags: keytextinforvaluepositionfileprint
1条回答
网友
1楼 · 发布于 2024-09-28 05:22:47

最简单的帮助方法就是提供完整的细节。我将推断这与学校有关,并试图为你指出正确的方向。发布可复制的示例最有帮助,以便有人可以轻松地重新创建设置并排除故障。如果您有长文件,请尝试使用gistspastebin之类的方法。你知道吗

根据你的描述,我认为你有:

  • 小序列列表
  • 一个数字文本文件,每行一个

我想你想得到你的n序列列表,遍历你的key_nucleotide_position整数文件中的整数,然后提取MyListith元素?你知道吗

让我们先来看看你在做什么,先看看你是如何迭代MyList

MyList = ['cttgaaat', 'attcggat', 'gtatcaag']
for value in MyList: 
     print(value)

cttgaaat
attcggat
gtatcaag

假设变量key_nucleotide_position中存储了一个数字(比如说,3),那么每个循环都是这样做的:

MyList = ['cttgaaat', 'attcggat', 'gtatcaag']
for value in MyList:
     print(value[3])

使用MyList中的第一个值,让我们看看它的作用:

'cttgaaat'[3]
g

您正在根据整数片段从字符串中提取ith字符。你知道吗

这个问题不太清楚,但我猜您可能希望颠倒过来,从列表中获取ith项,而不是字符串中的ith字符。你知道吗

即考虑:

MyList[1]

'attcggat'

现在,让你的for循环,这样MyList[foo]就可以改变foo到你想要的每个循环。你知道吗

相关问题 更多 >

    热门问题