[英]DNA Sequence Python not printing
import random
def pair():
base = random.choice('AGCT')
if base == 'A':
base = base + 'G'
elif base == 'G':
base = 'A' + base
elif base == 'C':
base = base + 'T'
else:
base = 'C' + base
return base
def sequence():
pair()
n = random.randint(1, 3)
print(base * n)
def main():
pair()
sequence()
pair()
sequence()
pair()
sequence()
main()
我必須在 main 函數中創建三個序列,將它們連接起來形成一個更大的序列,然后打印結果。
但是一直報錯,為什么呢?
回溯(最近一次調用最后一次):File "/Users/nicole/Desktop/CS/dna.py", line 33, in <module> main() File "/Users/nicole/Desktop/CS/dna.py", line 27, in main sequence() File "/Users/nicole/Desktop/CS/dna.py", line 23, in sequence print(base * n) NameError: name 'base' is not defined
您需要為base
分配一個值。 在您的情況下,它看起來像這樣:
def sequence():
base = pair()
n = random.randint(1, 3)
print(base * n)
你應該盡量避免多次使用一個變量名,這樣你就可以更容易地閱讀你的代碼。 :)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.