rna = input('Enter a rna sequence: ')
for i in rna:
    if i in 'acguACGU':
        print('That is a valid rna sequence.')
    else:
        print('That is not a valid rna sequence.')


我想让用户输入针对字符串进行测试,并且仅在用户输入中的每个字母有效或无效时才打印答案。 (例如:GCC的输入应该给我打印一张(“那是有效的RNA序列”),而不是打印3次。

最佳答案

您可以使用set并测试rna(用户输入)的集合是否是包含所有可能字符的集合的子集(或者反之,如果所有可能字符的集合是该字符集的超集)输入集)。范例-

rna = input('Enter a rna sequence: ')
seq = set('acguACGU')
if seq.issuperset(rna):
    print('That is a valid rna sequence.')
else:
    print('That is not a valid rna sequence.')

关于python - 如何针对另一个字符串测试for循环中单个字符的整个字符串?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33108629/

10-11 07:38