python - 我试图在函数中返回一个随机生成的数字,这样我就可以用它做一些数学运算
问题描述
我正在尝试制作一个随机生成数字的函数,以便另一个函数可以操作它。我让它做它需要做的事情但是下一个函数返回一个错误“变量未定义”,我猜该变量只存在于范围内
我试过在最后使用 return 语句,但由于某种原因它没有返回
import random
def generator1(): #name of function
die_total = 0 #used for iteration
for generator1 in range(2): #loop,generates 2 numbers
die_roll = random.randint(1,6) #random int generator
if die_roll % 2 == 0: # depending wether the random is odd or even,5 0r 10 is added
die_roll += 10
else:
die_roll += 5
die_total += die_roll #used to itterate and obtain a total
return die_total #the problem,trying to return value of die_total
generator1()
print(die_total)
我打印时期望一个随机值。
解决方案
die_total
仅存在于您的generator1
函数内部(它是它的局部变量)。您可以使用返回值
print(generator1())
或者把它放在一个变量中
your_variable = generator1()
print(your_variable)
推荐阅读
- dns - 为什么 EDNS(0) 资源记录中的 RDATA 有 1 个八位字节?
- python - 为什么在使用 Python 的 wordcloud 库时,停用词没有从词云中排除?
- javascript - 在 Meteor 中,是否可以从同步函数(与 wrapAsync 相反)创建异步函数?
- postgresql - 在 PostgreSQL 中使用 LIKE '%a%' 同时清理数据以防止 SQL 注入
- python-3.x - 检查列表中的 2 个项目是否在两个不同的列表中
- angular - 角度材质树访问节点和子元素
- sql - 加入 2 个表,一个带有破折号的 GUID,一个没有
- twilio - Twilio Flex 仪表板,发送短信时触发 webhook
- mysql - MariaDB 10.4.13 性能比 MySQL 5.7.30 慢
- python-3.x - 升级 boto3 后,Moto 似乎停止嘲笑