Python 比较int的变量
我正在尝试创建模拟掷骰子的代码。我希望代码在滚动1时停止,但我的程序继续滚动该骰子Python 比较int的变量,python,python-3.x,compare,Python,Python 3.x,Compare,我正在尝试创建模拟掷骰子的代码。我希望代码在滚动1时停止,但我的程序继续滚动该骰子 import random def rollDie(die): die = random.randint(1,6) print(die) die1 = 0 while die1 != 1: rollDie(die1) 我怀疑我的代码正在比较1的对象Id和die1的对象Id。据我所知,“!=”是合适的“不等于”比较运算符 那么,我做错了什么?如何比较变量的值与它们的对象Id 您需要更
import random
def rollDie(die):
die = random.randint(1,6)
print(die)
die1 = 0
while die1 != 1:
rollDie(die1)
我怀疑我的代码正在比较1的对象Id和die1的对象Id。据我所知,“!=”是合适的“不等于”比较运算符
那么,我做错了什么?如何比较变量的值与它们的对象Id 您需要更新die1的值,使用函数的最简单方法是在函数中返回并将返回值分配给die1:
def rollDie():
return random.randint(1,6)
die1 = 0
while die1 != 1:
die1 = rollDie()
print(die1)
die1=rollDie()
int是不可变的,因此将die1
传递给函数并设置die=random。randint(1,6)
不会更改原始对象,它会创建一个新对象。何时更新die1
?它始终保持0
。