ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:24.80KB ,
资源ID:10110572      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-10110572.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Python100个小例子.docx)为本站会员(b****0)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

Python100个小例子.docx

1、Python100个小例子一、 Python 练习实例 1题目:有四个数字: 1、2、3、4,能组成多少个互不相同且无重复数字的三位数? 各是多少?程序分析:可填在百位、十位、个位的数字都是 1、 2、 3、4。组成所有的排列后再去 掉不满足条件的排列。程序源代码:#!/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)二、 Python 练习

2、实例 2题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提 10%;利润高于 10万元,低于 20万元时,低于 10万元的部分按 10%提成,高于 10万元的部分,可提成 7.5%;20万到40万之间时,高于 20万元的部分,可提 成 5%;40万到 60万之间时高于 40万元的部分, 可提成 3%;60万到100万之间 时,高于 60万元的部分,可提成 1.5%,高于 100万元时,超过 100万元的部分 按 1%提成,从键盘输入当月利润 I ,求应发放奖金总数? 程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。 程序源代码:#!/usr/bin/p

3、ython# -*- coding: UTF-8 -*-i = int(input( 净利润 :)arr = 1000000, 600000, 400000, 200000, 100000, 0rat = 0.01, 0.015, 0.03, 0.05, 0.075, 0.1r = 0for idx in range(0, 6):if i arridx:r += (i - arridx) * ratidxprint(i - arridx) * ratidx)i = arridxprint(r)三、 Python 练习实例 3题目:一个整数, 它加上 1 00后是一个完全平方数, 再加上 168

4、 又是一个完全平 方数,请问该数是多少?程序分析: 假设该数为 x 。1 、则: x + 100 = n2, x + 100 + 168 = m22、计算等式: m2 - n2 = (m + n)(m - n) = 1683、设置: m + n = i ,m - n = j , i * j =168 ,i 和 j 至少一个是偶数4、可得: m = (i + j) / 2 , n = (i - j) / 2 ,i 和 j 要么都是偶数,要么 都是奇数。5、从 3 和 4 推导可知道, i 与 j 均是大于等于 2 的偶数。6、由于 i * j = 168 , j=2 ,则 1 i j and (

5、i + j) % 2 = 0 and (i - j) % 2 = 0:m = (i + j) / 2 n = (i - j) / 2x = n * n - 100 print(x)四、 Python 练习实例 4 题目:输入某年某月某日,判断这一天是这一年的第几天? 程序分析:以3月 5日为例,应该先把前两个月的加起来, 然后再加上 5天即本 年的第几天,特殊情况,闰年且输入月份大于 2 时需考虑多加一天: 程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*-year = int(input(year:n)month = int(input(month:

6、n)day = int(input(day:n)months = (0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334)if 0 month 2):sum += 1print(it is the %dth day. % sum)五、 Python 练习实例 5 题目:输入三个整数 x,y,z ,请把这三个数由小到大输出。程序分析:我们想办法把最小的数放到 x 上,先将 x 与 y 进行比较,如果 xy 则将 x 与 y 的值进行交换, 然后再用 x 与 z 进行比较, 如果 xz 则将 x 与 z 的值 进行交换,这样能使 x 最小。程序

7、源代码:#!/usr/bin/python# -*- coding: UTF-8 -*- l = for i in range(3):x = int(input(integer:n) l.append(x)l.sort()print(l)六、 Python 练习实例 6 题目:斐波那契数列。程序分析:斐波那契数列( 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) 程序源代码: #

8、!/usr/bin/python# -*- coding: UTF-8 -*- def fib(n):a, b = 1, 1for i in range(n - 1):a, b = b, a + b return a#输出了第 10 个斐波那契数列 print(fib(10)#使用递归def fib(n):if n = 1 or n = 2:return 1return fib(n - 1) + fib(n - 2)# 输出了第 10 个斐波那契数列 print(fib(10) def fib(n):if n = 1:return 1if n = 2: return 1, 1fibs = 1,

9、 1for i in range(2, n): fibs.append(fibs-1 + fibs-2)return fibs# 输出前 10 个斐波那契数列 print(fib(10)七、 Python 练习实例 7 题目:将一个列表的数据复制到另一个列表中。 程序分析:使用列表 : 。程序源代码: #!/usr/bin/python# -*- coding: UTF-8 -*- a = 1, 2, 3 b = a: print(b)八、 Python 练习实例 8 题目:输出 9*9 乘法口诀表。程序分析:分行与列考虑,共9行9列,i控制行,j控制列 程序源代码:for i in rang

10、e(1,10): for j in range(1,i+1): print(%d*%d=%d % (i,j,i*j),end= ) print()九、 Python 练习实例 9 题目:暂停一秒输出。 程序分析:使用 time 模块的 sleep() 函数 #!/usr/bin/python# -*- coding: UTF-8 -*- import time myD = 1: a, 2: b for key, value in dict.items(myD):print(key, value) time.sleep(1) # 暂停 1 秒十、 Python 练习实例 10 题目:暂停一秒输出

11、,并格式化当前时间。 程序分析:无。程序源代码:#!/usr/bin/python#%H:%M:%S,time.localtime(time.time()%H:%M:%S,time.localtime(time.time()-*- coding: UTF-8 -*- import time print(time.strftime(%Y-%m-%d#暂停一秒time.sleep(1) print(time.strftime(%Y-%m-%d 十一、 Python 练习实例 11 Python 100 例 Python 100 例 题目:古典问题:有一对兔子,从出生后第 3 个月起每个月都生一对兔

12、子,小 兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子 总数为多少?程序分析:兔子的规律为数列 1,1,2,3,5,8,13,21 程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*-f1 = 1f2 = 1for i in range(1, 22): print(%12ld %12ld % (f1, f2),),if (i % 3) = 0:print()f1 = f1 + f2f2 = f1 + f2十二、 Python 练习实例 12 题目:判断 101-200 之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用

13、一个数分别去除 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 range(2, k + 1):if m % i = 0:leap = 0breakif leap = 1: print(%-4d % m)h += 1if h % 10 = 0: print

14、()leap = 1print(The total is %d % h) 十三、 Python 练习实例 13 题目:打印出所有的 水仙花数 ,所谓水仙花数 是指一个三位数,其各位数 字立方和等于该数本身。例如: 153是一个水仙花数 ,因为 153=1的三次方 5 的三次方 3 的三次方。程序分析: 利用 for 循环控制 100-999 个数,每个数分解出个位, 十位,百位。 程序源代码:print(100-999 之间的水仙花数有: )for i in range(100, 999):j = int(i / 1 % 10) # 个位 使用 int 的原因是强转故意让其损失精 度 ,Pyt

15、hon 中使用此方法获取时必须强转因为 Python 中默认保留小数k = int(i / 10 % 10) # 十位m = int(i / 100 % 10) # 百位if i = (j * 3 + k * 3 + m * 3): print(i)十四、 Python 练习实例 14 题目:将一个正整数分解质因数。例如:输入 90,打印出 90=2*3*3*5 。程序分析:对n进行分解质因数,应先找到一个最小的质数 k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。如果nk,但n能被k整除,则应打印出k的值,并用n除以k的商,作为 新的正整数你

16、n, 重复执行第一步。 如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 程序源代码:while 1:n = int(input( 请输入一个整数: )print(%d=%n,end=)while n1: for i in range(2,n+1): if n%i=0:n=int(n/i)if n=1: print(%d%i,end=) else:print(%d*%i,end=)breakprint()十五、 Python 练习实例 15 题目:利用条件运算符的嵌套来完成此题:学习成绩 =90 分的同学用 A 表示, 60-89分之间的用B表示,60分以下的用C表示。程序分析:程序

17、分析: (ab)?a:b 这是条件运算符的基本例子。 程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*-score = int(input( 输入分数 :n)if score = 90:grade = Aelif score = 60:grade = B else:grade = C print(%d 属于 %s % (score, grade) 十六、 Python 练习实例 16 题目:输出指定格式的日期。 程序分析:使用 datetime 模块。#!/usr/bin/python# -*- coding: UTF-8 -*- import dat

18、etime if _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(miyaz

19、akiBirthNextDay.strftime(%d/%m/%Y)# 日期替换 miyazakiFirstBirthday miyazakiBirthDate.replace(year=miyazakiBirthDate.year + 1) print(miyazakiFirstBirthday.strftime(%d/%m/%Y) 十七、 Python 练习实例 17 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个 数。程序分析:利用 while 或 for 语句, 条件为输入的字符不为 n 。 #!/usr/bin/python# -*- coding: UTF-8

20、 -*- import string s =input( 请输入一个字符串 :n) letters = 0 space = 0 digit = 0 others = 0i = 0 while i len(s):c = sii += 1if c.isalpha(): letters += 1 elif c.isspace():space += 1elif c.isdigit(): digit += 1else:others += 1print(char = %d,space = %d,digit = %d,others = %d % (letters, space, digit, others)

21、 十八、 Python 练习实例 18题 目 : 求 s=a+aa+aaa+aaaa+aa.a 的 值 , 其 中 a 是 一 个 数 字 。 例 如 2+22+222+2222+22222(此时共有 5 个数相加 ) ,几个数相加由键盘控制。 程序分析:关键是计算出每一项的值。程序源代码: #!/usr/bin/python# -*- coding: UTF-8 -*-Tn = 0Sn = n = int(input(n = ) a = int(input(a = ) for count in range(n):Tn = Tn + a a = a * 10 Sn.append(Tn) pri

22、nt(Tn)Sn = reduce(lambda x, y: x + y, Sn) print( 计算和为: , Sn) 十九、 Python 练习实例 19 题目:一个数如果恰好等于它的因子之和,这个数就称为 完数 。例如 6=12 3. 编程找出 1000以内的所有完数。程序分析:请参照程序 Python 练习实例 14。 程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*- from sys import stdout for j in range(2, 1001):k = n = -1 s = j for i in range(1, j):if

23、j % i = 0: n += 1s -= ik.append(i)if s = 0:print(j)for i in range(n):stdout.write(str(ki) stdout.write( )print(kn)二十、 Python 练习实例 20题目:一球从 100米高度自由落下, 每次落地后反跳回原高度的一半; 再落下, 求它在第 10 次落地时,共经过多少米?第 10 次反弹多高?程序分析:无 程序源代码: #!/usr/bin/python# -*- coding: UTF-8 -*-tour = height = hei = 100.0 # 起始高度 tim = 10

24、 # 次数 for i in range(1, tim + 1):# 从第二次开始, 落地时的距离应该是反弹高度乘以 2(弹到最高点再落下) if i = 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) 二十一、 Python 练习实例 21 题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾, 又多吃了一个第二天早上又将剩

25、下的桃子吃掉一半,又多吃了一个。以后每天 早上都吃了前一天剩下的一半零一个。到第 10 天早上想再吃时,见只剩下一个 桃子了。求第一天共摘了多少。程序分析:采取逆向思维的方法,从后往前推断。 程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*-x2 = 1for day in range(9, 0, -1):x1 = (x2 + 1) * 2x2 = x1print(x1)x,y,z比, c二十二、 Python 练习实例 22 题目:两个乒乓球队进行比赛,各出三人。甲队为 a,b,c 三人,乙队为 三人。已抽签决定比赛名单。有人向队员打听比赛的名单。

26、a 说他不和 x 说他不和 x,z 比,请编程序找出三队赛手的名单。程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*-for i in range(ord(x), ord(z) + 1):for j in range(ord(x), ord(z) + 1):if i != j:for k in range(ord(x), ord(z) + 1):if (i != k) and (j != k):if (i != ord(x) and (k != ord(x) and (k !=ord(z):print(order is a - %st b - %stc

27、-%s %(chr(i), chr(j), chr(k)二十三、 Python 练习实例 23题目:打印出如下图案(菱形) :*程序分析:先把图形分成两部分来看待,前四行一个规律,后三行一个规律, 利用双重 for 循环,第一层控制行,第二层控制列。程序源代码:#!/usr/bin/python# -*- coding: UTF-8 -*- from sys import stdout for i in range(4):for j in range(2 - i + 1): stdout.write( )for k in range(2 * i + 1):stdout.write(*)prin

28、t(n) for i in range(3):for j in range(i + 1): stdout.write( )for k in range(4 - 2 * i + 1):stdout.write(*)求出这个数列的print(n) 二十四、 Python 练习实例 24 题目:有一分数序列: 2/1 ,3/2 ,5/3 , 8/5 , 13/8 , 21/13. 前 20 项之和。程序分析:请抓住分子与分母的变化规律。 程序源代码: 方法一: #!/usr/bin/python# -*- coding: UTF-8 -*- a = 2.0 b = 1.0 s = 0 for n i

29、n range(1, 21):s += a / bt = aa = a + bb = t print(s) 二十五、 Python 练习实例 25 题目:求 1+2!+3!+.+20! 的和。 程序分析:此程序只是把累加变成了累乘。 #!/usr/bin/python# -*- coding: UTF-8 -*- n = 0 s = 0 t = 1 for n in range(1, 21):t *= ns += t print(1! + 2! + 3! + . + 20! = %d % s) 二十六、 Python 练习实例 26 题目:利用递归方法求 5! 。 程序分析:递归公式: fn=fn_1*4! 程序源代码:#!/usr/bin/python # -*- coding: UTF-8 -*- def fact(j):sum = 0if j = 0:sum = 1else:sum = j

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2