我已经编写了一个读取输入序列的脚本,但是必须在您按下Caps键的情况下编写该序列!如果未启用Caps Lock键,除了该错误我该如何要求一个新序列?
我有:
while True:
try:
seq = input ("voer uw sequentie in, IN HOOFDLETTERS: ")
break
except (ValueError, IndexError, KeyError ):
print("voer uw sequentie in , IN HOOFDLETTERS")
但是,如果在不使用Caps锁定的情况下编写此代码,则该代码对序列没有任何作用。
有人可以帮我吗
我已经在这里按关于het互补空气序列发布了mij问题!
我必须做下一帧:
`+3 SerIleLeuAlaStpProLysTrpGluProProTyrValAlaStpProIleTyrIleTyrTle`
+2 PheAsnThrSerMetThrLysValGlyThrProLeuArgSerMetThrHisIleTyrIleTyr
+1 PheGlnTyrStpHisAspGlnSerGlyAsnProLeuThrStpHisAspProTyrIleTyrIle
TTTCAATACTAGCATGACCAAAGTGGGAACCCCCTTACGTAGCATGACCCATATATATATATATA
TATATATATATATATGGGTCATGCTACGTAAGGGGGTTCCCACTTTGGTCATGCTAGTATTGAAA
-1 TyrIleTyrIleTyrGlySerCysTyrValArgGlyPheProLeuTrpSerCysStpTyrStp
-2 IleTyrIleTyrMetGlyHisAlaThrOc*GlyGlySerHisPheGlyHisAlaSerIleglu
-3 TyrIleTyrIleTrpValMetLeuArgLysGlyValProThrLeuValMetLeuValLeuLys
中间的序列是我的输入序列,mijn输入序列下的序列是mijn互补序列,+1是我整个序列的翻译。 +2是从位置1开始的翻译,而+3是从位置2开始的翻译(计数从零开始)
-1,-2和-3是相同的计算,但现在我必须使用我的补码序列。
我已经完成了前几帧,但是我无法完成序列,complementair。
我用下一个脚本完成了它:
def translate(seq):
x = 0
aaseq = []
while True:
try:
aaseq.append(dicti[seq[x:x+3]])
x += 3
except (IndexError, KeyError):
break
return aaseq
for frame in range(3):
#print(translate(seq[frame:]))
print(''.join(item.split('|')[0] for item in translate(seq[frame:])))
有人可以帮我补航吗?
谢谢
最佳答案
我看不到您实际检查大写字母的任何地方。我建议使用if语句而不是try else语句。
while True:
seq = input("voer uw sequentie in, IN HOOFDLETTERS: ")
if seq.isupper():
break
else:
print "Input must be IN HOOFDLETTERS"
另外,您也可以只接受用户输入并自己大写。