第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

需要幫助修復(fù)隨機數(shù)

需要幫助修復(fù)隨機數(shù)

汪汪一只貓 2021-12-17 14:37:52
我正在學(xué)習(xí) Python 并且正在研究隨機擲骰子。當(dāng)我運行它時,它會重復(fù)在詢問您是否要再次播放后首先顯示的相同數(shù)字。我需要幫助找到我在這里出錯的地方。我嘗試移動代碼并放置不同種類的代碼。我只是被難住了。import sysimport randomimport timegreeting = "Welcome to my Dice Game!"roll = "Lets roll this die!"die = random.randint(0, 6)print(greeting)time.sleep(2)answer = input("Want to play?")while answer == "yes" or answer == "y":    print(roll)    time.sleep(2)    print(die)    answer = input("Want to play again?")print("Thanks for playing!")這就是我得到的:Welcome to my Dice Game!Want to play?yesLets roll this die!5Want to play again?yesLets roll this die!5Want to play again?yLets roll this die!5
查看完整描述

2 回答

?
qq_笑_17

TA貢獻1818條經(jīng)驗 獲得超7個贊

您需要在每次循環(huán)中重新計算骰子的值,例如:


import sys

import random

import time



greeting = "Welcome to my Dice Game!"

roll = "Lets roll this die!"



print(greeting)

time.sleep(2)


answer = input("Want to play?")


while answer == "yes" or answer == "y":

    print(roll)

    time.sleep(2)

    die = random.randint(0, 6) # recompute it here instead

    print(die)

    answer = input("Want to play again?")

print("Thanks for playing!")


查看完整回答
反對 回復(fù) 2021-12-17
?
GCT1015

TA貢獻1827條經(jīng)驗 獲得超4個贊

當(dāng)您運行該命令時die = random.randint(0, 6),您告訴 Python 的是“使用該random.randint()函數(shù)在 1 到 6 之間選擇一個隨機整數(shù),然后將名為的變量設(shè)置為die等于選擇的整數(shù)”。完成后,您的其余代碼不會執(zhí)行任何操作來更新 的值die。這意味著print(die)在循環(huán)中將繼續(xù)打印最初給出的任何值。換句話說,該命令die = random.randint(0, 6) 并不意味著“random.randint(0, 6)每次我提到時重新運行該命令并獲得另一個隨機數(shù)die”。相反,die它只是一些具有特定常量值的變量。


由于random.randint()實際數(shù)字生成是什么,保持更新的一種方法die是簡單地將您在循環(huán)外的命令移動到循環(huán)內(nèi):


while answer == "yes" or answer == "y":

    print(roll)

    die = random.randint(0, 6) # Generate a new random number, then assign it to 'die'

    time.sleep(2)

    print(die)

    answer = input("Want to play again?")

事實上,如果你除了打印數(shù)字之外沒有真正對數(shù)字做任何事情,你可以完全忘記使用一個變量,只需將random.randint()命令粘貼在你的print命令中:


while answer == "yes" or answer == "y":

    print(roll)

    time.sleep(2)

    print(random.randint(0, 6))

    answer = input("Want to play again?")


查看完整回答
反對 回復(fù) 2021-12-17
  • 2 回答
  • 0 關(guān)注
  • 204 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號