- 已关闭**。此问题需要超过focused。当前不接受答案。
- 想要改进此问题吗?**更新此问题,使其仅关注editing this post的一个问题。
47分钟前就关门了。
Improve this question
我在完成要求我做的家庭作业时遇到了麻烦。请编写一个代码,执行以下操作:
1.定义一个返回1到10之间整数的函数。
1.调用定义的函数以获取随机整数。
1.继续绘制随机整数,直到获得大于或等于8的数字。
1.显示在停止之前进行了多少次抽奖
您应该导入随机模块。
我很高兴这个任务的完成,但也非常感谢你的解释。我目前不知道如何记录我停下来之前抽了多少次。我目前有以下信息,请帮助?
from random import randint
rng= randint(1,11)
def random_number_generator():
print(rng)
while rng<=7:
break
random_number_generator()
2条答案
按热度按时间tsm1rwdh1#
按照您提供的代码,让我们看看您需要解决的4个任务。
1.定义一个返回1到10之间整数的函数。
正如你已经知道的,你可以用关键字
def
定义一个函数,所以你的函数头def random_number_generator()
定义了一个名为random_number_generator
的函数,当函数被调用时,它不带参数,因此有空括号()
。在Python中,每个函数都默认返回
None
,如果你想改变这个行为,你必须在你的函数中添加一个return
语句。get_two
在调用时返回数字2
。1.调用定义的函数以获取随机整数。
您正确地从
random
模块中导入了randint
,生成了一个介于1
和10
之间的随机整数。但是您必须小心选择数字,因为randint
包含这两个值。也就是说,randint(1, 11)
将为您提供一个介于1和11之间的随机整数。1.继续绘制随机整数,直到获得大于或等于8的数字。
random_number_generator
函数,直到得到 * 大于或等于8* 的数字。你对给定条件下
while
循环的想法是正确的。但是考虑一下它的位置。把循环放在一个每次调用只生成一个随机数的函数中有意义吗?1.显示在停止之前进行了多少次抽奖
使用
print
函数显示您绘制了多少次。为了获得绘制次数,您可以添加一个counter
变量,该变量随每次循环而递增。每次循环时,您可以向counter
变量添加1。有两个选项可供您执行此操作:counter = counter + 1
,这可能很难处理1.这就是为什么
counter += 1
有一个简写,它和1一样,但是你不需要写counter
两次。用这个你可以建立一个简单的计数器,就像这样:
话虽如此,您现在可以开始实现给定的任务了。
1.从
random
模块导入randint
1.定义一个返回
1
和'10'之间的随机数的函数1.重复生成随机数,直到它大于或等于8
1.计算在循环终止之前所用的绘制次数。
由于不需要存储随机生成的数字,因此可以在循环条件中使用
random_number_generator
函数调用来检查该数字是否大于或等于8。在循环中,您只需计算需要绘制一个数字的次数。
但是你可以把这个值存储在变量
rng
中来检查循环条件,在这种情况下,你需要给rng
赋值两次,一次是在while循环外初始化变量rng
,第二次是在循环内改变rng
的值。p1tboqfb2#
请参见下面代码中的注解。