即時新.. 我的腳本很長,所以我會寫下具體的部分。python中的錯誤
str= ''
#str is a long DNA sequence
def FIND_UPPER(str):
global x
x=str.upper()
y=0
while y>(-1):
y=x.find('CTTTGATTCCT')
z=x[y+11:y+22]
x=x[y+23:]
variability(z)
#variability is another function
FIND_UPPER(str)
,然後我得到這個消息:
列表索引必須是整數,而不是str的
那些行:
variability(z)
FIND UPPER(str)
我怎樣才能解決這個問題? 感謝
編輯: 這是變異:
A=[0]*10
C=[0]*10
T=[0]*10
G=[0]*10
def variability(z):
for i in z:
if i=='A':
A[i]=A[i]+1
i=i+1
elif i=='T':
T[i]=T[i]+1
i=i+1
elif i=='C':
C[i]=C[i]+1
i=i+1
elif i=='G':
G[i]=G[i]+1
i=i+1
return G
return C
return T
return A
我固定它,u能告訴我,如果我有ü吧? :
def variability(z):
for i in range(len(z)):
if i=='A':
A[i]=z[i]
A[i]+=1
i+=1
elif i=='T':
T[i]=z[i]
T[i]+=1
i+=1
elif i=='C':
C[i]=z[i]
C[i]+=1
i+=1
elif i=='G':
G[i]=z[i]
G[i]+=1
i+=1
return G,C,T,A
你能告訴我們'變異性'嗎? – TerryA
以及顯示錯誤指向的實際回溯。這不僅僅是毫無意義的噪音,它實際上告訴你如何調試問題。 –
第一件事 - 函數中的多個'return'語句不起作用。只有第一個將被執行,因爲它突破了功能。如果你想返回多個東西,請嘗試使用一個元組。 – rlms