簡體   English   中英

有什么更好的方法可以編寫此python代碼

[英]What better ways could i have written this python code

大家好,我是剛開始使用堆棧溢出和Python的人,現在我只用不到一個月的時間在Python中進行編碼。 我都是在編寫更精簡,更有效的代碼,我只是想知道如何使它變得更好。 任何幫助將不勝感激,謝謝你提前。

<!-- language-all: lang-python -->

from __future__ import division
from random import randint

die1 = 0
die2 = 0
die3 = 0
die4 = 0
die5 = 0
die6 = 0

for rolls in range(0, 10000):
    while True:
        rand = randint(1, 6)
        if rand == 1:
            die1 += 1
            break
        elif rand == 2:
            die2 += 1
            break
        elif rand == 3:
            die3 += 1
            break
        elif rand == 4:
            die4 += 1
            break
        elif rand == 5:
            die5 += 1
            break
        elif rand == 6:
            die6 += 1
            break
print 'the result was'
print 'die1 =', die1
print 'die2 =', die2
print 'die3 =', die3
print 'die4 =', die4
print 'die5 =', die5
print 'die6 =', die6

使用列表將使您的代碼更加簡潔。 例如,

from random import randint

dice = [0 for i in range(6)]

for rolls in range(0, 10000):
    rand = randint(1, 6)
    dice[rand-1] += 1

print 'the result was'
print dice

使用一個列表。 我現在無法訪問口譯員,但是可以這樣做。

dice = [0, 0, 0, 0, 0, 0]

for rolls in range(0, 10000):
    rand = randint(1, 6)
    dice[rand] = dice[rand] + 1

print 'the result was'
for i in range(0, 6):
    print 'die', i, '=', dice[i]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM