python中四則運算用字典實現 用字典實現演算法

2021-10-18 14:31:52 字數 1962 閱讀 2661

我必須實現以下演算法:equation其中「i」包含r、k、h和nterm,「j」包含d、e、c、y和返回淨電荷的正字元m。這種方法被另一種方法用來計算pi,它基本上是產生最低電荷的ph值。在

以下是我目前所掌握的情況:class proteinparam :

aa2mw =

aacomp = {}

aa2chargepos =

aa2chargeneg =

aanterm = 9.69

aacterm = 2.34

def __init__ (self, protein):

l = ''.join(protein).split()

l = ''.join(l).upper()

clean_prot = ""

for aa in l:

if aa in proteinparam.aa2mw:

clean_prot += aa

else:

pass

self.protstring = clean_prot

for i in proteinparam.aa2mw:

proteinparam.aacomp[i] = 0

for aa in self.protstring:

if aa in proteinparam.aacomp:

proteinparam.aacomp[aa] += 1

def aacount (self):

return(len(self.protstring))

def pi (self):

best_charge = 100000000

for test_ph in range (14000):

test_ph += 1

test_ph = (test_ph / 100)

new_charge = self.charge(test_ph)

if new_charge < best_charge:

best_charge = new_charge

return best_charge

def aacomposition (self) :

return proteinparam.aacomp

def charge (self, ph):

self.ph = ph

negative = 0

positive = 0

for pos in ['r', 'k', 'h']:

positive += ((proteinparam.aacomp[pos]) * ((10 ** proteinparam.aa2chargepos[pos]) / (((10 ** proteinparam.aa2chargepos[pos])) + (10 ** self.ph))))

positive += proteinparam.aanterm

for neg in ['d', 'e', 'c', 'y']:

negative += ((proteinparam.aacomp[neg]) * ((10 ** self.ph) / (((10 ** proteinparam.aa2chargeneg[neg])) + (10 ** self.ph))))

negative += proteinparam.aacterm

total = positive - negative

return total

prot_in = input("enter a protein: ")

prot_obj = proteinparam(prot_in)

x = prot_obj.pi()

print(x)

問題是,無論我輸入什麼,當我呼叫pi()時,我總是返回6.35,我不知道問題出在**。我懷疑它在charge()方法中,因為我不知道它在**,而且缺少錯誤並不能縮小它的範圍。輸入「vlspaktnvkaaw」應給出9.88的pi。有什麼想法嗎?在

python四則運算程式 四則運算(Python)

四則運算程式 一 資訊 二.題目要求 寫乙個能自動生成小學四則運算題目的程式,然後在此基礎上擴充套件 除了整數以外,還要支援真分數的四則運算,例如 1 6 1 8 7 24 程式要求能處理使用者的輸入,判斷對錯,累積分數 程式支援可以由使用者自行選擇加 減 乘 除運算 三 import random...

四則運算 python

中綴表示式9 3 2 1 轉為字尾表示式思路9 3 2 1 設立乙個運算子棧和字尾表示式棧 第乙個元素為數字9,加入字尾表示式棧 9 第二個元素為運算子 加入到運算子棧 第三個元素為數字3,字尾表示式棧 9 3 第四個元素為運算子 由於 的優先順序大於棧頂元素 所以將其加入到運算子棧中 第五個元素為...

四則運算(Python)

四則運算程式 一 資訊 部落格班級 作業要求 作業目標 完成四則運算的基本內容 學號3190704135 二.題目要求 寫乙個能自動生成小學四則運算題目的程式,然後在此基礎上擴充套件 1除了整數以外,還要支援真分數的四則運算,例如 1 6 1 8 7 24 2程式要求能處理使用者的輸入,判斷對錯,累...