以下是一种可能的解法:

  1. 首先生成一个包含 1-150 的列表。
  2. 从列表中随机选择一个数,将其加入结果列表中,并从原列表中删除。
  3. 重复步骤 2,直到结果列表中包含 78 个数。
  4. 返回结果列表。

Python 代码实现如下:

import random

def generate_random_numbers():
    all_numbers = list(range(1, 151))
    selected_numbers = []
    while len(selected_numbers) < 78:
        selected = random.choice(all_numbers)
        selected_numbers.append(selected)
        all_numbers.remove(selected)
    return selected_numbers

调用该函数即可得到随机生成的 78 个不重复的数:

>>> generate_random_numbers()
[148, 38, 127, 94, 98, 28, 144, 119, 84, 120, 24, 134, 31, 10, 54, 61, 88, 81, 141, 21, 123, 44, 1, 97, 52, 29, 56, 65, 137, 77, 96, 48, 145, 13, 108, 3, 76, 72, 112, 64, 6, 103, 63, 51, 142, 33, 132, 75, 39, 110, 19, 135, 91, 16, 47, 128, 131, 53, 8, 15, 50, 126, 68, 80, 27, 23, 146, 118, 66, 46, 90, 70, 18, 73, 101, 99, 45, 69, 49, 120, 30]

注意:由于是随机生成的,每次运行结果都可能不同。

Python 生成 1-150 之间 78 个不重复随机数

原文地址: https://www.cveoy.top/t/topic/lfbV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录