编一个列表生成函数,通过键盘输入正整数n。根据值生成包含n个介于1-200的随机整数的列表
时间: 2023-05-04 08:01:38 浏览: 122
以下是生成长度为n、包含1-200的随机整数的列表的函数:
import random
def generate_list(n):
lst = []
for i in range(n):
lst.append(random.randint(1, 200))
return lst
相关问题
首先,使用列表推导式和标椎库random生成一个包含50个介于1-100的随机整数的列表,然后编写函数isPrime(n)用来测试整数n是否为素数,接下来使用内置函数filter( )把函数isPrime( ) 作用到随机整数列表上,最后程序输出一个列表,其中只包含随机整数列表中不是素数的那些整数。
首先,可以使用列表推导式和标准库中的 random 模块来生成一个包含50个介于1-100的随机整数的列表,如下所示:
```python
import random
random_ints = [random.randint(1, 101) for _ in range(50)]
print(random_ints)
```
然后可以编写函数 `isPrime` 来测试整数 `n` 是否为素数,如下所示:
```python
def isPrime(n):
if n <= 1:
return False
for i in range(2, n):
if n % i == 0:
return False
return True
```
最后,可以使用内置函数 `filter` 把函数 `isPrime` 作用到随机整数列表上,如下所示:
```python
not_prime_ints = list(filter(lambda x: not isPrime(x), random_ints))
print(not_prime_ints)
```
最后,程序将输出一个列表,其中只包含随机整数列表中不是素数的那些整数。
生成一个python代码 输入一个1-100之间的正整数 n, 以 n 为随机数种子随机生成一个不大于 n 的正整数 m 。 生成一个包含元素为 1,2,3……n 的列表 ls,在列表 ls 中删除值为 m 的整数倍的元素,在两行中输出原始列表和删除 m 倍数后的列表。
可以按照以下方式编写 Python 代码来实现您的要求:
```python
import random
# 输入一个1-100之间的正整数n
n = int(input("请输入1-100之间的正整数n: "))
# 以n为随机数种子随机生成一个不大于n的正整数m
random.seed(n)
m = random.randint(1, n)
# 生成包含元素为1,2,3……n的列表ls
ls = list(range(1, n+1))
# 在列表ls中删除值为m的整数倍的元素
ls = [i for i in ls if i % m != 0]
# 输出原始列表和删除m倍数后的列表
print("原始列表: ", list(range(1, n+1)))
print("删除{}倍数后的列表: {}".format(m, ls))
```
这段代码首先通过 `input()` 函数让用户输入一个正整数 `n`,然后利用 `random` 模块生成一个随机数种子,并用该种子生成一个不大于 `n` 的随机整数 `m`。接着,生成一个包含元素为 `1` 到 `n` 的列表 `ls`。最后,利用列表推导式在 `ls` 中删除值为 `m` 的整数倍的元素,并输出原始列表和删除 `m` 倍数后的列表。
阅读全文