📜  Python|生成列表中除 K 以外的随机数(1)

📅  最后修改于: 2023-12-03 15:19:22.124000             🧑  作者: Mango

生成列表中除 K 以外的随机数

使用 Python 生成一个列表中除了某个特定值以外的随机数是一项非常普遍的任务。在本文中,我们将讨论如何使用 Python 生成这样的列表。

方法一:使用列表解析式

使用列表解析式,我们可以很容易地生成一个除了 k 以外的随机数列表。以下是相应的代码片段:

import random

# 生成长度为 n 的随机数列表
n = 10
lst = [random.randint(1, 100) for i in range(n)]

# 生成除 k 以外的随机数列表
k = 50
new_lst = [x for x in lst if x != k]

在这个代码片段中,我们使用 random 模块生成了一个长度为 n 的随机数列表,然后使用列表解析式生成了一个除 k 以外的随机数列表。

方法二:使用 filter 函数

除了列表解析式,我们还可以使用 Python 内置的 filter 函数生成一个除了 k 以外的随机数列表。以下是相应的代码片段:

import random

# 生成长度为 n 的随机数列表
n = 10
lst = [random.randint(1, 100) for i in range(n)]

# 生成除 k 以外的随机数列表
k = 50
new_lst = list(filter(lambda x: x != k, lst))

在这个代码片段中,我们使用 random 模块生成了一个长度为 n 的随机数列表,然后使用 filter 函数和 lambda 表达式生成了一个除 k 以外的随机数列表。

总结

在本文中,我们学习了两种方法来生成一个列表中除了某个特定值以外的随机数。其中,使用列表解析式是最简单和最直接的方法,而使用 filter 函数需要一定的函数式编程知识。