私は私のdicegameのコードの一部を作り直しましたが、ややうまく動作しますが、サイコロを振ってユーザースコアを表示しようとすると、 p1_scoreは定義されていません '。変数p2_scoreについても同じことが言えます。しかし、p1_scoreをran_num + ran_numと定義したので、なぜ私はエラーが出るのか分かりません。明らかにran_numは定義されていません
import random
import time
player_1 = input("")
player_2 = input("")
def rollDice(player_1):
ran_num = random.randint(1,6)
if ran_num == 1:
print("You rolled a",ran_num)
else:
print("You rolled a",ran_num)
p1_score = ran_num+ran_num
def rollDice(player_2):
ran_num = random.randint(1,6)
if ran_num == 1:
print("You rolled a",ran_num)
else:
print("You rolled a",ran_num)
p2_score = ran_num+ran_num
print("Please press ENTER to roll the dice")
input()
rollDice(player_1)
print("Good job",player_1,)
print("Your score is now",p1_score)
time.sleep(5)
print(player_2,"Press ENTER to roll the dice")
input()
rollDice(player_2)
print("Nice work",player_2)
print("Your score is now",p2_score)
def main():
rollDice(player1, player2)
main()
これらの変数は、関数にとってローカルです。あなたはそれを呼び出すコードに戻す必要があります。 – Carcigenicate
あなたはそれが意味することを私は得られないのですか? – johnny2945
'return'は何をしていますか? – Carcigenicate