我创建了这个脚本
#!/c/Python/Python38-32/python
import sys
import random
copy = sys.argv[1]
p = random.choices( ["FeeSimple","Leasehold"], weights=(50, 50), k=int(copy))
print(p)
当我输入副本为6时-有时结果为
["FeeSimple","FeeSimple","FeeSimple","FeeSimple","Leasehold","Leasehold"] OR
["FeeSimple","FeeSimple","FeeSimple","FeeSimple","FeeSimple","Leasehold"]
但我想要的是生成其中3个作为“FeeSimple”(50%),另一个作为“Leasehold”(50%)
注: copy变量可以是1到数百万之间的任意数字
如果我理解正确的话,您总是希望得到元素的1:1比率,但却是随机的分布。如果是这样的话,^{} 对于作业来说是错误的工具,因为它的比率是随机的,尽管是加权的。相反,制作一个k大小的元素列表,然后用^{} 将其洗牌:
示例输出:
相关问题 更多 >
编程相关推荐