在列表中存储整数集合

kin*_*735 4 python integer list python-3.x

我有一个包含RNA基本字母的列表和一个字典,可以将它们转换为数值.我想要做的是将这些数值存储到一个新的列表中.我有:

RNA_list = ['C', 'G', 'A', 'U']
RNA_dictionary = {'A': 1, 'U': 2, 'C': 3, 'G': 4}
for i in RNA_list:
    if i in RNA_dictionary:
        RNA_integers = RNA_dictionary[i]
    else:
        print()
Run Code Online (Sandbox Code Playgroud)

所以RNA_integers是3,4,1,2,但我需要以某种方式将它们存储在列表中.我想做的事情如下:

RNA_integer_list = []
for i in RNA_integers:
    RNA_integer_list = RNA_integer_list + i
Run Code Online (Sandbox Code Playgroud)

但是这会导致错误,因为for循环不能遍历整数.我是Python的新手,所以我不知道如何处理这个问题.如果有其他人可以帮助我,我真的很感激!

the*_*eye 5

你可以做

RNA_list = ['C', 'G', 'A', 'U']
RNA_dictionary = {'A': 1, 'U': 2, 'C': 3, 'G': 4}
RNA_integers = []
for i in RNA_list:
    if i in RNA_dictionary:
        RNA_integers.append (RNA_dictionary[i])

print RNA_integers
Run Code Online (Sandbox Code Playgroud)

产量

[3, 4, 1, 2]
Run Code Online (Sandbox Code Playgroud)

或者使用列表理解

RNA_integers = [RNA_dictionary[i] for i in RNA_list if i in RNA_dictionary]
Run Code Online (Sandbox Code Playgroud)

  • 或者只是`[RNA_list中的k的RNA_dictionary [k]]` (2认同)