Question 1
使用循环
for i in range(2000,3201): if i%7 == 0 and i%5!=0: print(i,end=',') print("\b")
使用生成器和列表解析
print(*(i for i in range(2000, 3201) if i%7 == 0 and i%5 != 0), sep=",")
Question 2
使用循环
n = int(input()) #input() function takes input as string type #int() converts it to integer type fact = 1 for i in range(1,n+1): fact = fact * i print(fact)
使用Lambda函数
n = int(input()) def shortFact(x): return 1 if x <= 1 else x*shortFact(x-1) print(shortFact(n))
使用reduce方法
from functools import reduce def fun(acc, item): return acc*item num = int(input()) print(reduce(fun,range(1, num+1), 1))
Question 3
使用循环
n = int(input()) ans = {} for i in range (1,n+1): ans[i] = i * i print(ans)
使用字典推导
n = int(input()) ans={i : i*i for i in range(1,n+1)} print(ans)