Vonco 发表于 2019-10-20 22:36:54

大家好,我是新来的,有个问题想求助一下,能帮我改一下这个python的代码吗?

这是一个分红包的代码。
#!/usr/bin/python3.7
#_*_coding:utf-8_*_
import random
if _name_ == "_main_":
    m = int(input("请输入红包总额:"))
    num = int(input("请输入红包个数:"))
    licens = []
    su = 0
    for i in range(num):
      ram = random.randint(1,10)
      su = su + ram
      licens.append(ram)
    for i in range(num):
      tmp = m * (liences/su)
      print("%.2f"%tmp)

冬雪雪冬 发表于 2019-10-20 22:41:26

程序没有问题,但算法有个小问题,比如m=1,num=3,ram都为3,则每个人的钱数都是0.33,总和是0.99,而不是1

jackz007 发表于 2019-10-20 22:44:20

      这一句:
if _name_ == "_main_":
      得改成下面这样:
if __name__ == "__main__":

Vonco 发表于 2019-10-20 23:15:47

冬雪雪冬 发表于 2019-10-20 22:41
程序没有问题,但算法有个小问题,比如m=1,num=3,ram都为3,则每个人的钱数都是0.33,总和是0.99,而不是 ...

这个怎么说呢,也算是一个bug吧,但是还有个问题我不知道:tmp = m*(liences/su)这里的liences有问题

Vonco 发表于 2019-10-20 23:16:58

冬雪雪冬 发表于 2019-10-20 22:41
程序没有问题,但算法有个小问题,比如m=1,num=3,ram都为3,则每个人的钱数都是0.33,总和是0.99,而不是 ...

这个怎么说呢,也算是一个bug吧,但是还有个问题我不知道:tmp = m*(liences/su)这里的liences有问题

Vonco 发表于 2019-10-20 23:18:01

jackz007 发表于 2019-10-20 22:44
这一句:
if _name_ == "_main_":
      得改成下面这样:


还是不行,是这个问题我不知道:tmp = m*(liences/su)这里的liences有问题

冬雪雪冬 发表于 2019-10-20 23:53:15

Vonco 发表于 2019-10-20 23:15
这个怎么说呢,也算是一个bug吧,但是还有个问题我不知道:tmp = m*(liences/su)这里的liences有问题

前面叫licens,后面是liences。不一样。

Vonco 发表于 2019-10-20 23:58:17

冬雪雪冬 发表于 2019-10-20 23:53
前面叫licens,后面是liences。不一样。

还是不行

冬雪雪冬 发表于 2019-10-21 00:05:24

Vonco 发表于 2019-10-20 23:58
还是不行

有中文括号。
#!/usr/bin/python3.7
#_*_coding:utf-8_*_
import random
if __name__ == "__main__":
    m = int(input("请输入红包总额:"))
    num = int(input("请输入红包个数:"))
    licens = []
    su = 0
    for i in range(num):
      ram = random.randint(1,10)
      su = su + ram
      licens.append(ram)
    for i in range(num):
      tmp = m * (licens/su)
      print("%.2f"%tmp)
页: [1]
查看完整版本: 大家好,我是新来的,有个问题想求助一下,能帮我改一下这个python的代码吗?