摘要:
import timedef f(x): #判断 x 是否为素数,返回bool值 if x == 2: return True elif x <= 1: return False else: t = False #判断是否能够整除 for i in range(2, int(x**.5)+1): i 阅读全文
摘要:
sum = 0 for i in range(1,1000): if i%3 == 0 or i%5 == 0: sum += i print(sum) 阅读全文
摘要:
p = [i for i in range(2,100)] #建立2-99的列表 for i in range(3,100): #1和2都不用判断,从3开始 for j in range(2, i): if i%j == 0: p.remove(i) break print(p) p = [i fo 阅读全文
摘要:
【Python练习题 025】 一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同 x = input('请输入任意位数的数字:') if x == x[::-1]: print('%s是个回文数' % x) else: print('%s不是回文数' % x) 【 阅读全文
摘要:
方法一 str = input('请输入若干字符:') def f(x): if x == -1: return '' else: return str[x] + f(x-1) print(f(len(str)-1)) 方法二 str = list(input('请输入若干字符:')) str.re 阅读全文
摘要:
利用递归方法求5!。 方法一 f = 1 for i in range(1,6): f = f * i print(f) 方法二 import functools print(functools.reduce(lambda x,y:x*y, range(1,6))) 方法三 import funct 阅读全文
摘要:
方法一 import functools sum = 0 for i in range(1,21): sum = sum + functools.reduce(lambda x,y: x*y, range(1, i+1)) print(sum) lambda x,y: x*y 的意思是:有一个函数, 阅读全文
摘要:
后一个分数的分子=前一个分数的分子+分母,后一个分数的分母=前一个分数的分子,循环个20次就有结果。注意,假设分子为a,分母为b,虽然 a = a + b, 但此时a已经变成 a+b 了,所以再给b重新赋值的时候,得是 (a+b)-b 才能等于原分母b,所以重新赋值时就得写成 a-b 方法一 fro 阅读全文
摘要:
Python的内置方法 str.center(width [, fillchar]) 就能轻而易举打印出来:str即是数量不等的星号,width即是最大宽度(7个空格),默认填充字符fillchar就是空格。两个for循环搞定!代码如下: 1 2 3 4 5 s = '*' for i in ran 阅读全文
摘要:
import randoma = [random.randint(1,100) for i in range(10)]def bu(target): length = len(target) while length > 0: length -= 1 cur = 0 while cur < leng 阅读全文
摘要:
import itertools for i in itertools.permutations('xyz'): if i[0] != 'x' and i[2] != 'x' and i[2] != 'z': print('a vs %s, b vs %s, c vs %s' % (i[0], i[ 阅读全文
摘要:
这题得倒着推。第10天还没吃,就剩1个,说明第9天吃完一半再吃1个还剩1个,假设第9天还没吃之前有桃子p个,可得:p * 1/2 - 1 = 1,可得 p = 4。以此类推,即可手算出。 阅读全文
摘要:
a = [100] #每个‘反弹落地’过程经过的路程,第1次只有落地(100米) h = 100 #每个‘反弹落地’过程,反弹的高度,第1次为100米 print('第1次从%s米高落地,走过%s米,之后又反弹至%s米。' % (h, a[0], h/2)) for i in range(2,11) 阅读全文
摘要:
a、b只要数字a能被数字b整除,不论b是不是质数,都算是a的因子。比如:8的质因子是 2, 2, 2,但8的因子就包括 1,2,4。 import math for i in range(2, 1000): factors = [] #因子列表,i 每次循环都清空 for j in range(1, 阅读全文
摘要:
a=input('输入数字>>>') count=int(input('几个数字相加>>>')) ret=[] for i in range(1,count+1): ret.append(int(a*i)) print(ret[i-1]) print(sum(ret)) a=input('输入数字> 阅读全文
摘要:
ASCII 码表的对应值,知道 ord('a') 能将字符 'a' 转化为 ASCII 码表上对应的数值,就可以了。其中,数字 0-9 对应的码值为 48-57,大写字母 A-Z 对应 65-90,小写字母 a-z 对应 97-122。 判断的时候应注意:'2' in range(3) 的结果是 F 阅读全文
摘要:
# print(' 判断输入值和60大小判断')# b=int(input('input num'))# if b >60:# print('良')# elif b==60:# print('及格')# else:# print('不及格') 阅读全文
摘要:
#参考http://www.cnblogs.com/iderek/p/5959318.html n = num = int(input('请输入一个数字:')) #用num保留初始值 f = [] #存放质因数的列表 for j in range(int(num/2)+1): #判断次数仅需该数字的 阅读全文
摘要:
# 【Python练习题 009】 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,# 其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,# 因为153=1的三次方+5的三次方+3的三次方。# # 把任意三位数的百位、十位、个位拆解出来就好办了。# 思路:将任意3位数除以100 阅读全文
摘要:
lst = []for i in range(100): #建立 101-200 的列表 lst.append(101+i)for i in range(101, 201): #除数为 101-200 这200个数字 for j in range(2,i): #除数为从2至i本身的前一个数字 if 阅读全文