关于随机取值
我这有个取随机值模拟交易胜率的想法,但刚入门pathon,很多东西还不会,想求大家编写个小程序,感谢!想实现功能如下:
1、有以下列表,“-1”6个,“1”1个,“2”2个,“5”1个
lst = ["-1","-1","-1","-1","-1","-1","1","2","2","5"]
2、每次取一个值,循环30次,将每次取值结果和最终累加结果输出。
import random
random.randint()括号里放最小值和最大值+1
给个最佳答案谢了 我知道导入random模块,但还是不会完整的写出来,好人做到底,请给我一套完整的代码,谢了 求人不如求己,翻看了random函数的说明,调用random.choice实现了预期效果
lst = [-1, -1, -1, -1, -1, -1, 1, 2, 2, 5]
i = 0
while i <= 30:
num = random.choice(lst)
print(num, end=" ")
num += num
i += 1
print(f"\n累计{num}")
from random import choice
arr = [-1] * 6 +
res = []
for n in range(30):
res.append(choice(arr))
print(sum(res)) wangxiaolvshi 发表于 2022-6-15 12:36
求人不如求己,翻看了random函数的说明,调用random.choice实现了预期效果
不错不错{:10_254:}。
其实很多时候自己也是能找到答案的。
我也是从零到现在,每次遇到的问题都先自己找答案,所以几乎没有发问过问题(因为几乎都有题解)。
犯错肯定会有的,然后很多大佬都会热心指教。
有时看看其他大佬的代码,了解他的思路,发现更好,就重复运用到熟悉为止(可以说是抄袭思路,哈哈哈)从中学习更多。 我的代码可能会更好一点
from random import choice
lst = [-1,-1,-1,-1,-1,-1,1,2,2,5]
randlst = []
for i in range(30):
randlst.append(choice(lst))
print(randlst)
print(sum(randlis)) 感谢,5楼“傻眼猫咪”的支持和鼓励,通过B站自学python,难免遇到很多问题,身边也没有编程的朋友,只能通过论坛来求教了,感谢各位热心的付出。
wangxiaolvshi 发表于 2022-6-15 12:36
求人不如求己,翻看了random函数的说明,调用random.choice实现了预期效果
回头在看自己的代码,有个严重错误,应该在循环体外设置一个变量sum=0,在循环体内让sum +=num,最后输出sum才对。同时对比傻眼猫咪和临时号的写法,我这个方法,太原始了,土的掉渣
页:
[1]