百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Python100道练习题pdf版,(附答案)

moboyou 2025-09-13 06:04 5 浏览

目录

  • 实例001:数字组合
  • 实例002:“个税计算”
  • 实例003:完全平方数
  • 实例004:这天第几天
  • 实例005:三数排序
  • 实例006:斐波那契数列
  • 实例007:copy
  • 实例008:九九乘法表
  • 实例009:暂停一秒输出
  • 实例010:给人看的时间
  • 实例011:养兔子
  • 实例012:100到200的素数
  • 实例013:所有水仙花数
  • 实例014:分解质因数
  • 实例015:分数归档
  • 实例016:输出日期
  • 实例017:字符串构成
  • 实例018:复读机相加
  • 实例019:完数
  • 实例020:高空抛物
  • 实例021:猴子偷桃
  • 实例022:比赛对手
  • 实例023:画菱形
  • 实例024:斐波那契数列II
  • 实例025:阶乘求和
  • 实例026:递归求阶乘
  • 实例027:递归输出
  • 实例028:递归求等差数列
  • 实例029:反向输出
  • 实例030:回文数
  • 实例031:字母识词
  • 实例032:反向输出II
  • 实例033:列表转字符串
  • 实例034:调用函数
  • 实例035:设置输出颜色
  • 实例036:算素数
  • 实例037:排序
  • 实例038:矩阵对角线之和
  • 实例039:有序列表插入元素
  • 实例040:逆序列表
  • 实例041:类的方法与变量
  • 实例042:变量作用域
  • 实例043:作用域、类的方法与变量
  • 实例044:矩阵相加
  • 实例045:求和
  • 实例046:打破循环
  • 实例047:函数交换变量
  • 实例048:数字比大小
  • 实例049:lambda
  • 实例050:随机数
  • 实例051:按位与
  • 实例052:按位或
  • 实例053:按位异或
  • 实例054:位取反、位移动
  • 实例055:按位取反
  • 实例056:画圈
  • 实例057:画线
  • 实例058:画矩形
  • 实例059:画图(丑)
  • 实例060:字符串长度
  • 实例061:杨辉三角
  • 实例062:查找字符串
  • 实例063:画椭圆
  • 实例064:画椭圆、矩形
  • 实例065:画组合图形
  • 实例066:三数排序
  • 实例067:交换位置
  • 实例068:旋转数列
  • 实例069:报数
  • 实例070:字符串长度II
  • 实例071:输入和输出
  • 实例072:创建链表
  • 实例073:反向输出链表
  • 实例074:列表排序、连接
  • 实例075:不知所云
  • 实例076:做函数
  • 实例077:遍历列表
  • 实例078:字典
  • 实例079:字符串排序
  • 实例080:猴子分桃
  • 实例081:求未知数
  • 实例082:八进制转十进制
  • 实例083:制作奇数
  • 实例084:连接字符串
  • 实例085:整除
  • 实例086:连接字符串II
  • 实例087:访问类成员
  • 实例088:打印星号
  • 实例089:解码
  • 实例090:列表详解
  • 实例091:time模块
  • 实例092:time模块II
  • 实例093:time模块III
  • 实例094:time模块IV
  • 实例095:转换时间格式
  • 实例096:计算复读次数
  • 实例097:磁盘写入
  • 实例098:磁盘写入II
  • 实例099:磁盘读写
  • 实例100:列表转字典


由于篇幅问题,需完整版后台扣“1”即可


实例001:数字组合

题目 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?


程序分析 遍历全部可能,把有重复的剃掉。


total=0
for i in range(1,5):
    for j in range(1,5):
        for k in range(1,5):
            if ((i!=j)and(j!=k)and(k!=i)):
                print(i,j,k)
                total+=1
print(total)


简便方法 用itertools中的permutations即可。


import itertools
sum2=0
a=[1,2,3,4]
for i in itertools.permutations(a,3):
    print(i)
    sum2+=1
print(sum2)



实例002:“个税计算”

题目 企业发放的奖金根据利润提成。利润(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,求应发放奖金总数?


程序分析 分区间计算即可。


profit=int(input('Show me the money: '))
bonus=0
thresholds=[100000,100000,200000,200000,400000]
rates=[0.1,0.075,0.05,0.03,0.015,0.01]
for i in range(len(thresholds)):
    if profit<=thresholds[i]:
        bonus+=profit*rates[i]
        profit=0
        break
    else:
        bonus+=thresholds[i]*rates[i]
        profit-=thresholds[i]
bonus+=profit*rates[-1]
print(bonus)



实例003:完全平方数

题目 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?


程序分析 因为168对于指数爆炸来说实在太小了,所以可以直接省略数学分析,用最朴素的方法来获取上限:


n=0
while (n+1)**2-n*n<=168:
    n+=1


print(n+1)


思路是:最坏的结果是n的平方与(n+1)的平方刚好差168,由于是平方的关系,不可能存在比这更大的间隙。

至于判断是否是完全平方数,最简单的方法是:平方根的值小数为0即可。

结合起来:


n=0
while (n+1)**2-n*n<=168:
    n+=1


for i in range((n+1)**2):
    if i**0.5==int(i**0.5) and (i+168)**0.5==int((i+168)**0.5):
        print(i-100)



实例004:这天第几天

题目 输入某年某月某日,判断这一天是这一年的第几天?


程序分析 特殊情况,闰年时需考虑二月多加一天:


def isLeapYear(y):
    return (y%400==0 or (y%4==0 and y%100!=0))
DofM=[0,31,28,31,30,31,30,31,31,30,31,30]
res=0
year=int(input('Year:'))
month=int(input('Month:'))
day=int(input('day:'))
if isLeapYear(year):
    DofM[2]+=1
for i in range(month):
    res+=DofM[i]
print(res+day)



实例005:三数排序

题目 输入三个整数x,y,z,请把这三个数由小到大输出。


程序分析 练练手就随便找个排序算法实现一下,偷懒就直接调函数。


raw=[]
for i in range(3):
    x=int(input('int%d: '%(i)))
    raw.append(x)


for i in range(len(raw)):
    for j in range(i,len(raw)):
        if raw[i]>raw[j]:
            raw[i],raw[j]=raw[j],raw[i]
print(raw)




raw2=[]
for i in range(3):
    x=int(input('int%d: '%(i)))
    raw2.append(x)
print(sorted(raw2))



实例006:斐波那契数列

题目 斐波那契数列。


程序分析 斐波那契数列(Fibonacci sequence),从1,1开始,后面每一项等于前面两项之和。图方便就递归实现,图性能就用循环。


递归实现


def Fib(n):
    return 1 if n<=2 else Fib(n-1)+Fib(n-2)
print(Fib(int(input())))


朴素实现
target=int(input())
res=0
a,b=1,1
for i in range(target-1):
    a,b=b,a+b
print(a)



实例007:copy

题目 将一个列表的数据复制到另一个列表中。


程序分析 使用列表[:],拿不准可以调用copy模块。


import copy
a = [1,2,3,4,['a','b']]


b = a          # 赋值
c = a[:]        # 浅拷贝
d = copy.copy(a)    # 浅拷贝
e = copy.deepcopy(a)  # 深拷贝


a.append(5)
a[4].append('c')


print('a=',a)
print('b=',b)
print('c=',c)
print('d=',d)
print('e=',e)


============ RESTART: F:\PyWorkspace\Python100\100examples\007.py ============

a= [1, 2, 3, 4, ['a', 'b', 'c'], 5]

b= [1, 2, 3, 4, ['a', 'b', 'c'], 5]

c= [1, 2, 3, 4, ['a', 'b', 'c']]

d= [1, 2, 3, 4, ['a', 'b', 'c']]

e= [1, 2, 3, 4, ['a', 'b']]



实例008:九九乘法表

题目 输出 9*9 乘法口诀表。


程序分析 分行与列考虑,共9行9列,i控制行,j控制列。


for i in range(1,10):
    for j in range(1,i+1):
        print('%d*%d=%2ld '%(i,j,i*j),end='')
    print()



实例009:暂停一秒输出

题目 暂停一秒输出。


程序分析 使用 time 模块的 sleep() 函数。


import time
for i in range(4):
    print(str(int(time.time()))[-2:])
    time.sleep(1)



实例010:给人看的时间

题目 暂停一秒输出,并格式化当前时间。


程序分析 同009.


import time


for i in range(4):
    print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))
    time.sleep(1)

由于篇幅问题,需完整版后台扣“1”即可

最后祝大家早日学有所成!!

相关推荐

python新手学习常见数据类型——数字

Python支持三种不同的数值类型:整型(int)、浮点型(float)、复数(complex)创建数字:a=1b=2.7c=8+4j删除数字:a=1b=2.7c=8+4...

只用一个套路公式,给 Excel 中一列人员设置随机出场顺序

很多同学会觉得Excel单个案例讲解有些碎片化,初学者未必能完全理解和掌握。不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解Excel的各个知...

Excel神技 TIME函数:3秒搞定时间拼接!职场人必学的效率秘籍

你是否经常需要在Excel中手动输入时间,或者从不同单元格拼接时、分、秒?今天我要揭秘一个超实用的Excel函数——TIME函数,它能让你3秒内生成标准时间格式,彻底告别繁琐操作!一、TIME函数基础...

销售算错数被批?97 Excel 数字函数救场,3 步搞定复杂计算

销售部小张被老板当着全部门骂。上季度销售额汇总,他把38652.78算成36852.78,差了1800块。财务对账时发现,整个部门的提成表都得重算。"连个数都算不对,还做什么销售?&...

如何使用Minitab 1分钟生成所需要的SPC数据

打开Minitab,“计算”-“随机数据”-“正太”,因为不好截图,使用的是拍照记录的方式.再要生产的行数中,填写125,可以按照要求,有些客户要求的是100个数据,就可以填写100...

验证码,除了 12306,我还没有服过谁

为了防止暴力注册或爬虫爬取等机器请求,需要验证操作者是人还是机器,便有了验证码这个设计。本文作者主要介绍了如何使用Axure来设计一个动态的图形验证码,一起来学习一下吧。在软件设计中,为了防止暴力...

零基础也能学会的9个Excel函数,小白进阶必备

今天给大家分享一些常用的函数公式,可以有效地解决Excel中办公所需,0基础也可以轻松学会。建议收藏,在需要的时候可以直接套用函数。1、计算排名根据总和,计算学生成绩排名。函数公式=RANK(E2,$...

[office] excel表格数值如何设置_excel表格怎样设置数值

excel表格数值如何设置  因为电子表格应用程序是用来处理数值数据的,所以数值格式可能是工作表中最关键的部分,格式化数值数据的方式由用户决定,但在每个工作簿的工作表之间应使用一致的处理数字的方法。...

Excel最常用的5个函数!会用最后一个才是高手

是不是在处理Excel数据时,面对繁琐的操作烦恼不已?手动操作不仅耗时费力,还容易出错。别担心,表姐这就为你揭秘Excel中几个超实用的函数,让数据处理变得轻松高效!表姐整理了552页《Office从...

新手必会的53个Excel函数_惊呆小伙伴的全套excel函数技能

(新手入门+进阶+新函数)一、新手入门级(24个)1、Sum函数:求和=Sum(区域)2、Average函数:求平均值=Average(区域)3、Count函数:数字个数=Count(区域)4、Cou...

打工人私藏的4个Excel函数秘籍,效率提升3.7%

小伙伴们好啊,今天咱们分享几个常用函数公式的典型应用。合并内容如下图,希望将B列的姓名,按照不同部门合并到一个单元格里。=TEXTJOIN(",",1,IF(A$2:A$15=D2,B...

Excel偷偷更新的8个函数!原来高手都在用这些隐藏技能

领导突然要销售数据,你手忙脚乱筛选到眼花...同事3分钟搞定的报表,你折腾半小时还在填充公式...明明用了VLOOKUP,却总显示#N/A错误...别慌!今天教你的8个动态数组函数,就像给Excel装...

Excel表格随机函数怎么用?讲解三种随机函数在不同场景的应用

excel随机函数,其特点是能够生成一组随机数字,根据不同需求,还能批量生成小数位和整数,及指定行数和列数,或指定区间范围内的数字。这里根据需求,作者设置了三个问题,第1个是随机生成0至1之间的数字...

单纯随机抽样该如何进行?_单纯随机抽样的适用范围及注意事项

在数据分析中,抽样是指从全部数据中选择部分数据进行分析,以发掘更大规模数据集中的有用信息。在收集数据过程中,绝大多数情况下,并不采取普查的方式获取总体中所有样本的数据信息,而是以各类抽样方法抽取其中若...

随机函数在Excel中的应用_随机函数在excel中的应用实例

【分享成果,随喜正能量】职场,如果你没有价值,那么你随时可能被取代;如果你的价值不如别人,那么社会也不会惯你,你将被无情地淘汰掉。不管什么时候,你一定要学会构建自己的价值。每个人都应该思考这个问题:我...