Python开发练习题分享
11、题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....
程序源代码:
实例(Python2.0+)
#!/usr/bin/python#-*-coding:UTF-8-*-f1=1f2=1foriinrange(1,22):print"%12ld%12ld"%(f1,f2),if(i%3)==0:print""f1=f1+f2f2=f1+f2
以上实例输出结果为:
112358
1321345589144
23337761098715972584
4181676510946177112865746368
75025121393196418317811514229832040
1346269217830935245785702887922746514930352
241578173908816963245986102334155165580141267914296
12、题目:判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
程序源代码:
实例(Python2.0+)
#!/usr/bin/python#-*-coding:UTF-8-*-h=0leap=1frommathimportsqrtfromsysimportstdoutforminrange(101,201):k=int(sqrt(m+1))foriinrange(2,k+1):ifm%i==0:leap=0breakifleap==1:print"%-4d"%mh+=1ifh%10==0:print""leap=1print"Thetotalis%d"%h
以上实例输出结果为:
101
103
107
109
113
127
131
137
139
149
151
157
163
167
173
179
181
191
193
197
199
Thetotalis21
零基础学习Python开发练习100题实例(2)
13、题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
程序源代码:
实例(Python2.0+)
#!/usr/bin/python#-*-coding:UTF-8-*-forninrange(100,1000):i=n/100j=n/10%10k=n%10ifn==i**3+j**3+k**3:printn
以上实例输出结果为:
153
370
371
407
14、题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
程序源代码:
实例(Python2.0+)
#!/usr/bin/python#-*-coding:UTF-8-*-defreduceNum(n):print"{}=".format(n),ifnotisinstance(n,int)orn<=0:print"请输入一个正确的数字!"exit(0)elifnin[1]:print"{}".format(n)whilennotin[1]:#循环保证递归forindexinxrange(2,n+1):ifn%index==0:n/=index#n等于n/indexifn==1:printindexelse:#index一定是素数print"{}*".format(index),breakreduceNum(90)reduceNum(100)
以上实例输出结果为:
90=2*3*3*5
100=2*2*5*5
15、题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
程序分析:程序分析:(a>b)?a:b这是条件运算符的基本例子。
程序源代码:
实例
#!/usr/bin/python#-*-coding:UTF-8-*-score=int(raw_input("输入分数:"))ifscore>=90:grade="A"elifscore>=60:grade="B"else:grade="C"print"%d属于%s"%(score,grade)
以上实例输出结果为:
输入分数:
89
89属于B
16、题目:输出指定格式的日期。
程序分析:使用datetime模块。
实例(Python2.0+)
#!/usr/bin/python#-*-coding:UTF-8-*-importdatetimeif__name__=="__main__":#输出今日日期,格式为dd/mm/yyyy。更多选项可以查看strftime()方法print(datetime.date.today().strftime("%d/%m/%Y"))#创建日期对象miyazakiBirthDate=datetime.date(1941,1,5)print(miyazakiBirthDate.strftime("%d/%m/%Y"))#日期算术运算miyazakiBirthNextDay=miyazakiBirthDate+datetime.timedelta(days=1)print(miyazakiBirthNextDay.strftime("%d/%m/%Y"))#日期替换miyazakiFirstBirthday=miyazakiBirthDate.replace(year=miyazakiBirthDate.year+1)print(miyazakiFirstBirthday.strftime("%d/%m/%Y"))
以上实例输出结果为:
25/02/2018
05/01/1941
06/01/1941
05/01/1942
17、题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
程序分析:利用while语句,条件为输入的字符不为""。
程序源代码:
实例
#!/usr/bin/python#-*-coding:UTF-8-*-importstrings=raw_input("inputastring:")letters=0space=0digit=0others=0forcins:ifc.isalpha():letters+=1elifc.isspace():space+=1elifc.isdigit():digit+=1else:others+=1print"char=%d,space=%d,digit=%d,others=%d"%(letters,space,digit,others)
以上实例输出结果为:
inputastring:
runoob
char=6,space=0,digit=0,others=0
18、题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。
程序分析:关键是计算出每一项的值。
程序源代码:
实例(Python2.0+)
#!/usr/bin/python#-*-coding:UTF-8-*-Tn=0Sn=[]n=int(raw_input("n="))a=int(raw_input("a="))forcountinrange(n):Tn=Tn+aa=a*10Sn.append(Tn)printTnSn=reduce(lambdax,y:x+y,Sn)print"计算和为:",Sn
以上实例输出结果为:
n=4
a=4
4
44
444
4444
计算和为:4936
19、题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。
程序源代码:
实例(Python2.0+)
#!/usr/bin/python#-*-coding:UTF-8-*-fromsysimportstdoutforjinrange(2,1001):k=[]n=-1s=jforiinrange(1,j):ifj%i==0:n+=1s-=ik.append(i)ifs==0:printjforiinrange(n):stdout.write(str(k[i]))stdout.write("")printk[n]
以上实例输出结果为:
6
123
28
124714
496
1248163162124248
20、题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
程序分析:无
程序源代码:
Python实例
#!/usr/bin/python#-*-coding:UTF-8-*-tour=[]height=[]hei=100.0#起始高度tim=10#次数foriinrange(1,tim+1):#从第二次开始,落地时的距离应该是反弹高度乘以2(弹到最高点再落下)ifi==1:tour.append(hei)else:tour.append(2*hei)hei/=2height.append(hei)print("总高度:tour={0}".format(sum(tour)))print("第10次反弹高度:height={0}".format(height[-1]))
以上实例输出结果为:
总高度:tour=299.609375
第10次反弹高度:height=0.09765625
以上就是本文关于零基础学习Python开发的练习题实例,希望对大家有所帮助。最后想要了解更多关于Python发展前景趋势,请关注扣丁学堂python培训官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供最新的Python视频教程系统,通过千锋扣丁学堂金牌讲师在线录制的Python视频教程课程,让你快速掌握Python从入门到精通开发实战技能。扣丁学堂Python技术交流群:816572891。
微信如何多开和QQ如何多开苹果因为有强大的加密机制,所以不能多开,但是山猪签通过修改程序的唯一标志来实现一个手机多个相同的程序共同存在着,他可以直接替换签名实现。不过微信的的话要注意不要因为多开被封号,所以
从8999元跌至2499元,折叠屏骁龙8552K屏OIS光学防抖目前已经有很多手机品牌推出折叠屏手机,包括三星华为小米和OPPO等品牌,然而这些品牌推出的折叠屏都是比较昂贵的,特别是三星和华为的折叠屏手机,华为最为昂贵,三星其次,小米和OPPO
手机厂商狂喜!联发科首个WiFi7亮相坐等明年旗舰手机中国新闻在WiFi6之后,无线网络技术将迈入第七代。1月19日消息,今天联发科首次对外展示了其第七代无线网络技术WiFi7技术。结果显示,联发科的WiFi7技术具有超高速和低延
快递面单竟成了广告阵地来源中国消费者报原标题快递面单竟成了广告阵地(主题)安徽省消保委调查发现七成以上快递面单广告来自三通一达(副题)您的包裹快递单上有二维码广告吗?现在很多快递单上有一个二维码,旁边印
国家计算机病毒应急处理中心监测发现15款违法移动应用新华社天津1月19日电(记者张建新梁姊)国家计算机病毒应急处理中心近期通过互联网监测发现15款移动应用存在隐私不合规行为,违反网络安全法个人信息保护法相关规定,涉嫌超范围采集个人隐
京东慧采是指什么呢?入驻需要的要求和条件又是什么呢?很多人在听到这个的时候都不了解这个平台,其实京东慧采也可以称为京东企业购,是京东打造的一个面对企业政府银行运营商上市公司国企等等单位方便快捷的采购平台。慧采也是邀请制入驻的,入驻也
神奇!最新研究某些环境条件下,遗忘是学习的一种形式环球时报综合报道一项最新研究显示,在某些环境条件下无法回忆起特定记忆的情况,并不代表大脑正在衰退,反而是大脑正在进行学习行为。今日俄罗斯网站15日报道称,这项研究显示,阻止大脑与储
德国推翻此前2030年仅1500万辆纯电车目标改为也包括混合动力车智通财经APP获悉,德国交通部长VolkerWissing周一表示,德国政府推动的2030年1,500万辆电动车(EV)上路目标包括纯电车与混合动力车。德国执政联盟在去年11月公布
物联卡使用寿命是多久?长期使用网络会持续稳定吗?物联卡是三大运营商面向企业研发的商用级卡片,就只能上网,不能打电话和发短信的,如果一旦欠费找其他的代理上或者营业厅及客服是没有办法解决的,物联网卡是独立的管理系统,与普通手机卡不一
Mysql的查询出现在select语句中的select语句,称为子查询或内查询。外部的select查询语句,称为主查询或外查询。子查询分类按结果集的行列数不同分为4种标量子查询(结果集只有一行一列
Zookeeper搭建集群环境1。集群角色Leader角色Zookeeper集群的核心角色一个集群环境有且仅有一个Leader角色事务请求的唯一调度者与处理者保证集群事务处理的顺序性是所有的集群服务器之间的调度