输入一个1-100之间的正整数n,以n为随机数种子随机生成一个不大于n的正整数m。生成一个包含元素为1,2,3·······n的列表ls,在列表ls中删除值为m的整数倍的元素,在两行中输出原始列表和删除m倍数后的列表。
时间: 2024-05-01 08:19:02 浏览: 159
创建包含随机数的列表,然后去掉其中的所有重复数字。
可以使用Python的random模块生成随机数,再使用列表解析式生成包含1到n的整数列表。接着,使用列表解析式筛选出不是m的倍数的整数,即可得到删除m倍数后的列表。
以下是代码实现:
```python
import random
n = int(input("请输入一个正整数 n(1-100):"))
random.seed(n) # 以n为种子生成随机数
m = random.randint(1, n) # 随机生成不大于n的整数m
ls = [i for i in range(1, n+1)] # 生成包含1到n的整数列表
new_ls = [i for i in ls if i % m != 0] # 删除m的倍数
print("原始列表:", ls)
print("删除{}倍数后的列表:".format(m), new_ls)
```
示例输出:
```
请输入一个正整数 n(1-100):10
原始列表: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
删除7倍数后的列表: [1, 2, 3, 4, 5, 6, 8, 9, 10]
```
阅读全文