Python100例.doc
《Python100例.doc》由会员分享,可在线阅读,更多相关《Python100例.doc(96页珍藏版)》请在咨信网上搜索。
1、Python 练习实例1题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。程序源代码:实例(Python 2.0+)#!/usr/bin/python # -*- coding: UTF-8 -*- for i in range(1,5): for j in range(1,5): for k in range(1,5): if( i != k ) and (i != j) and (j != k): print i,j,k以上实例输出结果为:1 2 31 2
2、 41 3 21 3 41 4 21 4 32 1 32 1 42 3 12 3 42 4 12 4 33 1 23 1 43 2 13 2 43 4 13 4 24 1 24 1 34 2 14 2 34 3 14 3 2Python 练习实例2Python 100例题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部
3、分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。程序源代码:实例(Python 2.0+)#!/usr/bin/python # -*- coding: UTF-8 -*- i = int(raw_input(净利润:) arr = 1000000,600000,400000,200000,100000,0 rat = 0.01,0.015,0.03,0.05,0.075,0.1 r = 0 for idx in range(0,6): if iarridx: r+=
4、(i-arridx)*ratidx print (i-arridx)*ratidx i=arridx print r以上实例输出结果为:净利润:1200001500.010000.011500.0Python 练习实例3Python 100例题目:一个整数,它加上100和加上268后都是一个完全平方数,请问该数是多少?程序分析:在10000以内判断,将该数加上100后再开方,加上268后再开方,如果开方后的结果满足如下条件,即是结果。请看具体分析:程序源代码:实例(Python 2.0+)#!/usr/bin/python # -*- coding: UTF-8 -*- import math
5、 for i in range(10000): #转化为整型值 x = int(math.sqrt(i + 100) y = int(math.sqrt(i + 268) if(x * x = i + 100) and (y * y = i + 268): print i以上实例输出结果为:212611581Python 练习实例4Python 100例题目:输入某年某月某日,判断这一天是这一年的第几天?程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于2时需考虑多加一天:程序源代码:实例(Python 2.0+)#!/usr/bin
6、/python # -*- coding: UTF-8 -*- year = int(raw_input(year:n) month = int(raw_input(month:n) day = int(raw_input(day:n) months = (0,31,59,90,120,151,181,212,243,273,304,334) if 0 month 2): sum += 1 print it is the %dth day. % sum以上实例输出结果为:year:2015month:6day:7it is the 158th day.Python 练习实例5Python 10
7、0例题目:输入三个整数x,y,z,请把这三个数由小到大输出。程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果xy则将x与y的值进行交换,然后再用x与z进行比较,如果xz则将x与z的值进行交换,这样能使x最小。程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*-l = for i in range(3): x = int(raw_input(integer:n) l.append(x)l.sort()print l以上实例输出结果为:integer:8integer:5integer:65, 6, 8Python 练习实例6Python 1
8、00例题目:斐波那契数列。程序分析:斐波那契数列(Fibonacci sequence),又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、。在数学上,费波那契数列是以递归的方法来定义:F0 = 0 (n=0)F1 = 1 (n=1)Fn = Fn-1+ Fn-2(n=2)程序源代码:方法一#!/usr/bin/python# -*- coding: UTF-8 -*-def fib(n):a,b = 1,1for i in range(n-1):a,b = b,a+breturn a# 输出了第10个斐波那契数列print fib(10)方法二#!/usr/
9、bin/python# -*- coding: UTF-8 -*-# 使用递归def fib(n):if n=1 or n=2:return 1return fib(n-1)+fib(n-2)# 输出了第10个斐波那契数列print fib(10)以上实例输出了第10个斐波那契数列,结果为:55方法三如果你需要输出指定个数的斐波那契数列,可以使用以下代码:#!/usr/bin/python# -*- coding: UTF-8 -*-def fib(n): if n = 1: return 1 if n = 2: return 1, 1 fibs = 1, 1 for i in range(2
10、, n): fibs.append(fibs-1 + fibs-2) return fibs# 输出前 10 个斐波那契数列print fib(10) 以上程序运行输出结果为:1, 1, 2, 3, 5, 8, 13, 21, 34, 55Python 练习实例7Python 100例题目:将一个列表的数据复制到另一个列表中。程序分析:使用列表:。程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*-a = 1, 2, 3b = a:print b以上实例输出结果为:1, 2, 3Python 练习实例8Python 100例题目:输出 9*9 乘法口诀表
11、。程序分析:分行与列考虑,共9行9列,i控制行,j控制列。程序源代码:9*9 乘法口诀#!/usr/bin/python # -*- coding: UTF-8 -*- for i in range(1, 10): print for j in range(1, i+1): print %d*%d=%d % (i, j, i*j),以上实例输出结果为:1*1=12*1=2 2*2=43*1=3 3*2=6 3*3=94*1=4 4*2=8 4*3=12 4*4=165*1=5 5*2=10 5*3=15 5*4=20 5*5=256*1=6 6*2=12 6*3=18 6*4=24 6*5=3
12、0 6*6=367*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=498*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=649*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81Python 练习实例9Python 100例题目:暂停一秒输出。程序分析:无。程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*-import timemyD = 1: a, 2: bfor key, value in
13、 dict.items(myD):print key, valuetime.sleep(1) # 暂停 1 秒以上实例输出结果为(会有停顿效果):1 a2 bPython 练习实例10Python 100例题目:暂停一秒输出,并格式化当前时间。程序分析:无。程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*-import timeprint time.strftime(%Y-%m-%d %H:%M:%S,time.localtime(time.time()# 暂停一秒time.sleep(1)print time.strftime(%Y-%m-%d %H
14、:%M:%S,time.localtime(time.time()以上实例输出结果为:2015-10-21 17:48:402015-10-21 17:48:41Python 练习实例11Python 100例题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.程序源代码:实例(Python 2.0+)#!/usr/bin/python # -*- coding: UTF-8 -*- f1 = 1 f2 = 1 for i in rang
15、e(1,22): print %12ld %12ld % (f1,f2), if (i % 3) = 0: print f1 = f1 + f2 f2 = f1 + f2以上实例输出结果为: 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368 75025 121393 196418 317811 514229 832040 1346269 2178309 3524578 5702887 9227465 14930352 24157817 39088169 63245
16、986 102334155 165580141 267914296 Python 练习实例12Python 100例题目:判断101-200之间有多少个素数,并输出所有素数。程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*-h = 0leap = 1from math import sqrtfrom sys import stdoutfor m in range(101,201): k = int(sqrt(m + 1) for i in
17、range(2,k + 1): if m % i = 0: leap = 0 break if leap = 1: print %-4d % m h += 1 if h % 10 = 0: print leap = 1print The total is %d % h以上实例输出结果为:101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 The total is 21Python 练习实例13Python 100例题目:打印出所有的水仙花数,所谓水仙花数是指一个三位数,其各位数字
18、立方和等于该数本身。例如:153是一个水仙花数,因为153=1的三次方5的三次方3的三次方。程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*-for n in range(100,1000): i = n / 100 j = n / 10 % 10 k = n % 10 if n = i * 3 + j * 3 + k * 3: print n以上实例输出结果为:153370371407Python 练习实例14Python 100例题目:将一个正整数分解质因数。例如:输入9
19、0,打印出90=2*3*3*5。程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。(2)如果nk,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*-def reduceNum(n): print = .format(n), if not isinstance(n, int) or n =90分的同学用A表示
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python100
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。