weixin_44532019 2022-06-19 16:50 采纳率: 69.2%
浏览 31
已结题

python random 拓展方法

需要循环打印一个随机的整数

import random

slsj = random.randint(1,5)

但是总合控制不住 想要让他 用for 循环打印 然后总和 等于 100

  • 写回答

3条回答 默认 最新

  • 关注

    这种吗

    img

    import random
    
    def random_num_with_fix_total(maxValue, num):
        '''生成总和固定的整数序列
        maxvalue: 序列总和
        num:要生成的整数个数'''
        a = random.sample(range(1,100), k=num-1) # 在1~99之间,采集20个数据
        a.append(0)   # 加上数据开头
        a.append(100)
        a = sorted(a)
        b = [ a[i]-a[i-1] for i in range(1, len(a)) ] # 列表推导式,计算列表中每两个数之间的间隔
        print(b)
        print(len(b))
        print( sum(b))
    
    random_num_with_fix_total(100, 60)
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 6月27日
  • 已采纳回答 6月19日
  • 创建了问题 6月19日