Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 随机数生成,x概率为1_Python - Fatal编程技术网

Python 随机数生成,x概率为1

Python 随机数生成,x概率为1,python,Python,我正在使用一个数字生成器,目前正在使用下面的代码 from random import randint print(randint(0,1)) 当它工作时,我需要生成0或1,但我需要生成器以x(比如80%)概率生成1 如何在python中有效地实现这一点?random.random()将返回一个介于0和1之间的随机十进制数。使用此值确定您的选择: from random import random print(0 if random() > 0.8 else 1) 当然,0.8可以替

我正在使用一个数字生成器,目前正在使用下面的代码

from random import randint
print(randint(0,1))
当它工作时,我需要生成0或1,但我需要生成器以x(比如80%)概率生成
1

如何在python中有效地实现这一点?

random.random()
将返回一个介于
0
1
之间的随机十进制数。使用此值确定您的选择:

from random import random 
print(0 if random() > 0.8 else 1)
当然,
0.8
可以替换为任何概率(
60%->0.6


正如@TigerhawkT3所指出的,如果您想基于随机概率执行操作,可以使用较短版本的
random()<0.8
来生成布尔变量,如

x = random() < 0.8
if x:
    print('hello world!')
x=random()<0.8
如果x:
打印(“你好,世界!”)
random.random()
将返回一个介于
0
1
之间的随机小数。使用此值确定您的选择:

from random import random 
print(0 if random() > 0.8 else 1)
当然,
0.8
可以替换为任何概率(
60%->0.6


正如@TigerhawkT3所指出的,如果您想基于随机概率执行操作,可以使用较短版本的
random()<0.8
来生成布尔变量,如

x = random() < 0.8
if x:
    print('hello world!')
x=random()<0.8
如果x:
打印(“你好,世界!”)

实际上,短版可以是
print(random()<0.8)
@Fredrik他的评论很好。他建议如果他想用一个以这种方式确定的变量来确定动作,他可以用这个较短的版本来创建一个布尔变量,这就是为什么我说“实际上是这样的”。
1
/
0
True
/
False
之间唯一明显的区别是它们在打印时的外观,而且不太可能向用户展示这个结果。它更可能在程序的后期使用,在这种情况下,整数和布尔几乎可以互换。实际上,短版本可以是
print(random()<0.8)
@Fredrik。他的评论很好。他建议如果他想用一个以这种方式确定的变量来确定动作,他可以用这个较短的版本来创建一个布尔变量,这就是为什么我说“实际上是这样的”。
1
/
0
True
/
False
之间唯一明显的区别是它们在打印时的外观,而且不太可能向用户展示这个结果。它更可能在程序的后面使用,在这种情况下,整数和布尔值几乎可以互换。