2017-08-15 68 views
-2

嗨我一直在構造這段代碼,但是當骰子落在一個骰子上時我需要停止while循環。當randint = 1時,我該如何停止while循環

from random import randint 
    min = 1 
    max = 6 
    roll=input ('care to roll?') 
    while roll == ('yes' or 'Yes'): 
    print ("rolling...") 
    print randint(min,max) 
    print randint(min,max) 
    while randint (1): 
     break 
    else: 
     continue 
    if roll == ('no' or 'No'): 
    print ("fine then, see if I care")   
+0

你究竟想在這裏完成什麼?停止執行while循環的方法是添加'while while result!= 1'等條件。您可以將throw的結果存儲到變量'result = randint(min,max)' –

+2

請注意,'while roll ==('yes'或'Yes')'是**沒有做你認爲它正在做的事** –

+1

考慮檢查'roll.lower()'對一個值 –

回答

0

商店以下斷裂試驗

from random import randint 
min = 1 
max = 6 
roll = input('care to roll?') 
while roll == 'yes' or roll == 'Yes': 
    print ("rolling...") 
    die = randint(min,max) 
    print(die) 
    if die == 1: 
    break 
    roll = input ('care to roll?') 
if roll == 'no' or roll == 'No': 
    print("fine then, see if I care") 
+0

謝謝我會試試這個。 – JoeMoma

+2

另外,不要屏蔽內置函數'min'和'max'。在Python 2中使用'raw_input'。 – randomir

+0

@Milk no - randomir創建的是你*不應該用你自己的變量掩蓋內建函數* –

0

假設你想要具有以下屬性建立一個「俄羅斯輪盤賭」計劃滾動值:

  • 繼續玩,只要玩家想要它;
  • 當玩家投擲1:他死了;

你可以是這樣的:

from random import randint 

while input("Wanna play Russian roulette?") in ('yes', 'Yes', 'yup',): 
    throw = randint(1,6) 
    if throw == 1: 
     print("You die") 
     break 
    print("The result was", throw, "you live") 

注意,你沒有理由使用變量minmax(這是壞的命名慣例反正,因爲他們隱藏的內置功能minmax ),因爲您可以將這些直接提供給randint()函數。

編輯:因爲我做你的功課你,這裏有一些建議,以使它更有趣一些:

  • 讓玩家選擇從1到6,這將是致命的罰球。確保玩家輸入一個整數,數值介於1和6之間。
  • 告訴玩家他在遊戲中倖存了多少次。
+0

是的,我也會嘗試 – JoeMoma

+0

它是如何工作的? –

+0

是的,它確實感謝 – JoeMoma

0

首先,你的else語句沒有,如果存在紅旗。如果給出「是」作爲輸入,那麼您的第一條聲明將不起作用。您可以使用roll.lower()僅檢查一個輸入。 試試這個:

from random import randint 

min = 1 
max = 6 
roll=raw_input('care to roll?').lower() 

while roll == 'yes': 
    print roll 
    print ("rolling...") 
    random_num = randint(min, max) 
    if random_num==1: 
     print "Sorry 1 came!!!" 
     break 

if roll == 'no': 
    print ("fine then, see if I care")  

此外,有人建議,如果你插入一段代碼粘貼然後選擇代碼和編輯過程中使用{},它會縮進代碼爲您服務。希望這可以幫助。

+0

這也不錯,我會試試這一個兩個 – JoeMoma