from random import random,seed
n=int(input())
if n>=1 and n<=100:
m=seed(n)
ls=[1]
for i in [2,n+1]:
ls.append(i)
i=i+1
print(ls)
for a in [2,n+1]:
if a%m==0:
continue
else:
ls2=ls.append(a)
print(ls2)
runfile('C:/Users/86137/Desktop/spyder/untitled0.py')
6
[1, 2, 7]
Traceback (most recent call last):
File "C:\Users\86137\Desktop\spyder\untitled0.py", line 18, in
if a%m==0:
TypeError: unsupported operand type(s) for %: 'int' and 'NoneType'
不是很清楚你想干什么,大概猜到,你这里是想把输入的数组当作随机数的种子(当然,是输入的数在你设定的范围内的话,也就是1~100)。你这里的 m 大概是想根据种子获取一个随机数,你不能直接
m = seed(n)
而是这样:
# 先设置种子
seed(n)
# 之后根据种子生成随机数,将其赋值给m
m = random()
其次,如果你 for 循环中使用的 [2, n+1]想用的数是从2到n+1,你可以使用range(2, n+1),[]代表一个list, [2, n+1]这个 list 之中只有两个元素:2和 n+1
提两个建议
1、你要实现啥。
2、代码用 插入代码功能贴。
目前发现的问题:
if n>=1 and n<=100:
m=seed(n)
这两句,你要实现啥?
m 永远是None
type(seed(1))
Out[5]: NoneType
a%m这里是有错的,字符串怎么能对NoneType取余呢