Bekerja di Python 2.7. Saya memiliki kamus dengan nama tim sebagai kunci dan jumlah run yang dicetak dan diizinkan untuk setiap tim sebagai daftar nilai:
NL_East = {'Phillies': [645, 469], 'Braves': [599, 548], 'Mets': [653, 672]}
Saya ingin dapat memberi makan kamus ke fungsi dan beralih ke setiap tim (tombol).
Inilah kode yang saya gunakan. Saat ini, saya hanya bisa pergi tim demi tim. Bagaimana saya mengulangi setiap tim dan mencetak win_percentage yang diharapkan untuk masing-masing tim?
def Pythag(league):
runs_scored = float(league['Phillies'][0])
runs_allowed = float(league['Phillies'][1])
win_percentage = round((runs_scored**2)/((runs_scored**2)+(runs_allowed**2))*1000)
print win_percentage
Terima kasih atas bantuannya.
Anda dapat dengan mudah beralih ke kamus, juga:
sumber
Kamus memiliki fungsi bawaan yang disebut
iterkeys()
.Mencoba:
sumber
Objek kamus memungkinkan Anda untuk beralih item. Juga, dengan pencocokan pola dan pembagian dari
__future__
Anda dapat melakukan hal-hal yang menyederhanakan sedikit.Akhirnya, Anda dapat memisahkan logika Anda dari pencetakan Anda untuk membuat hal-hal yang sedikit lebih mudah untuk di-refactor / debug nanti.
sumber
Pemahaman daftar dapat mempersingkat ...
sumber