我在賓果遊戲工作裏面我是用75號的數組。滾動數字後,代碼將刪除它。當數組中沒有數字時,我想停止滾動數字。如何在python中的數組用完時停止循環?
到目前爲止,我有這樣的:
import random
numbers=[]
number=1
for i in range (0,75):
numbers.append(number)
number=number+1
我如何讓代碼停止滾動一個號碼時數組的數字用盡?
我在賓果遊戲工作裏面我是用75號的數組。滾動數字後,代碼將刪除它。當數組中沒有數字時,我想停止滾動數字。如何在python中的數組用完時停止循環?
到目前爲止,我有這樣的:
import random
numbers=[]
number=1
for i in range (0,75):
numbers.append(number)
number=number+1
我如何讓代碼停止滾動一個號碼時數組的數字用盡?
可以使用random
功能混淆的結果。 然後,您可以使用創建一個序列,然後允許您按順序選擇它們。
這是你所需要的:
import random
current_list = list(range(0,75))
while current_list:
value = random.choice(current_list)
print("Current Value is {}".format(value))
current_list.remove(value)
您可以使用random
洗牌的元素,然後選擇它們依次是:
import random
numbers = list(range(1,76))
random.shuffle(numbers)
while len(numbers) > 0:
number = numbers.pop()
print(number)
'而numbers'應就位,同時LEN的'足夠(數字)> 0'。 –
而且,你實際上不是按順序挑選它們,而是按相反順序選擇。 (只是爲了澄清) –
@AhsanulHaque:這是如何相反的順序?沒有順序,因爲'numbers'列表是_random_開始的,所以數字是從前面還是後面彈出都沒有區別。此方法比使用list.remove()從列表中移除特定值更有效。 – mhawke
您可能要解釋你的問題更好。在你的代碼中,我沒有看到可能用完數字的數組(或列表)。 – Matthias
「如果數字:」會爲你工作,空單將表現爲假 – Serjik
首先我希望你用隨機數字填滿你的陣列。目前你還沒有這樣做。然後用範圍內的隨機索引(len(數組))挑選一個數字(不是賓果遊戲的工作原理?該列表的刪除方法將其刪除。您可以使用簡單的for循環,因爲您事先知道您需要刪除多少次。但這真的是這個任務嗎?一個人賓果遊戲有點沉悶,因爲你總是贏。 –