做了5条,困了,睡觉
1.
print sum(i for i in range(1000) if not (i%3 and i%5))
2.
def fibonacci(max):
x=1
y=2
yield 1
yield 2
while y<max:
x,y=y,x+y
yield y
print sum(i for i in fibonacci(4000000) if (1+i)%2 )
3.
下载这个脚本
http://infohost.nmt.edu/tcc/help/lang/python/prime.html
print max(Prime().factorize(600851475143))
4.
def is_reverse(x):
result=[]
while x:
result.append(x%10)
x=x/10
for i in range(len(result)/2):
if result[-i-1]!=result[i]:
return False
return True
digit3=range(100,1000)
max=0
for i in digit3:
for j in digit3:
r=i*j
if is_reverse(r):
if is_reverse(r)!=True:print r
if r>max:
max=r
print max
5.
prime_list = lambda x:[
i for i in range(2, x+1)
if all([i%x for x in range(2, int(i**0.5+1))])
]
"""
2**4<20
3*2<20
"""
print reduce(lambda x,y:x*y,prime_list(20))*(2**3)*3