当前位置: 首页 > news >正文

Python小白必做的30道基础练习题

Python小白必做的30道基础练习题(附详细解析与参考答案)

这些题目按难度递进排列,覆盖变量、输入输出、字符串、列表、字典、条件判断、循环、函数等核心基础。
学习建议

  • 先自己独立思考并写代码(不要直接看答案!)
  • 运行测试,遇到错误就调试
  • 每做完5道,复习一遍相关语法
  • 全部做完后再对比我的参考答案,优化自己的写法

每道题都给出题目 + 提示 + 参考代码 + 解析

第1-10题:基础语法与输入输出

1. 输出 “Hello, World!”
提示:使用print()函数。
参考答案:

print("Hello, World!")

2. 计算两个数的和
从键盘输入两个整数,输出它们的和。
参考答案:

a=int(input("请输入第一个数: "))b=int(input("请输入第二个数: "))print("两数之和为:",a+b)

3. 判断奇数还是偶数
输入一个整数,判断它是奇数还是偶数。
参考答案:

num=int(input("请输入一个整数: "))ifnum%2==0:print("偶数")else:print("奇数")

4. 比较三个数的大小
输入三个整数,输出最大的数。
参考答案:

a,b,c=map(int,input("请输入三个整数(用空格分隔): ").split())print("最大数是:",max(a,b,c))

5. 简单计算器
输入两个数和运算符(+ - * /),输出计算结果。
参考答案:

a=float(input("第一个数: "))op=input("运算符 (+-*/): ")b=float(input("第二个数: "))ifop=='+':print(a+b)elifop=='-':print(a-b)elifop=='*':print(a*b)elifop=='/':ifb!=0:print(a/b)else:print("除数不能为0")else:print("不支持的运算符")

6. 打印九九乘法表
用循环打印完整的九九乘法表。
参考答案:

foriinrange(1,10):forjinrange(1,i+1):print(f"{j}×{i}={i*j}",end="\t")print()

7. 求1到100的和
使用forwhile循环计算。
参考答案:

total=0foriinrange(1,101):total+=iprint("1到100的和是:",total)# 或者一行:print(sum(range(1, 101)))

8. 判断是否为闰年
输入年份,判断是否为闰年(能被4整除但不能被100整除,或能被400整除)。
参考答案:

year=int(input("请输入年份: "))if(year%4==0andyear%100!=0)or(year%400==0):print("是闰年")else:print("不是闰年")

9. 交换两个变量的值
不使用临时变量交换两个变量。
参考答案:

a,b=10,20a,b=b,aprint(a,b)# 输出 20 10

10. 字符串反转
输入一个字符串,输出它的反转形式。
参考答案:

s=input("请输入字符串: ")print(s[::-1])

第11-20题:字符串与列表

11. 统计字符串中某个字符出现的次数
参考答案:

s=input("请输入字符串: ")ch=input("请输入要统计的字符: ")print(s.count(ch))

12. 去除字符串两端空格
参考答案:

s=input("请输入带空格的字符串: ")print(s.strip())

13. 列表中最大值和最小值
参考答案:

lst=list(map(int,input("请输入数字列表(空格分隔): ").split()))print("最大值:",max(lst),"最小值:",min(lst))

14. 列表去重并保持顺序
参考答案:

lst=[1,2,2,3,4,4,5]unique=[]forxinlst:ifxnotinunique:unique.append(x)print(unique)# 更Pythonic:list(dict.fromkeys(lst))

15. 合并两个列表
参考答案:

a=[1,2,3]b=[4,5,6]print(a+b)

16. 计算列表中所有元素的和与平均值
参考答案:

nums=list(map(int,input().split()))print("和:",sum(nums),"平均值:",sum(nums)/len(nums))

17. 查找列表中第二个最大的数
参考答案:

nums=[5,2,8,1,9,3]unique=sorted(set(nums),reverse=True)print("第二大:",unique[1]iflen(unique)>1else"无")

18. 判断列表是否为空
参考答案:

lst=[]print("空"ifnotlstelse"非空")

19. 列表元素翻转
参考答案:

lst=[1,2,3,4,5]print(lst[::-1])# 或 lst.reverse()

20. 统计列表中正数、负数、零的个数
参考答案:

nums=list(map(int,input().split()))positive=sum(1forxinnumsifx>0)negative=sum(1forxinnumsifx<0)zero=nums.count(0)print(positive,negative,zero)

第21-30题:字典、函数与综合

21. 创建学生成绩字典并查询
参考答案:

scores={"张三":85,"李四":92,"王五":78}name=input("请输入姓名: ")print(scores.get(name,"未找到"))

22. 字典中值最大的键
参考答案:

d={"a":10,"b":25,"c":15}print(max(d,key=d.get))

23. 定义函数求阶乘
参考答案:

deffactorial(n):ifn==0orn==1:return1returnn*factorial(n-1)print(factorial(5))# 120

24. 判断回文数/回文字符串
参考答案:

s=input("请输入: ").lower()print("是回文"ifs==s[::-1]else"不是回文")

25. 斐波那契数列前n项
参考答案:

deffib(n):a,b=0,1for_inrange(n):print(a,end=" ")a,b=b,a+b fib(10)

26. 简单猜数字游戏
参考答案:

importrandom secret=random.randint(1,100)whileTrue:guess=int(input("猜一个1-100的数: "))ifguess<secret:print("太小了")elifguess>secret:print("太大了")else:print("猜对了!")break

27. 统计一句话中单词个数
参考答案:

sentence=input("请输入一句话: ")words=sentence.split()print("单词个数:",len(words))

28. 成绩等级转换
(90+ A,80-89 B,70-79 C,60-69 D,<60 E)
参考答案:

score=int(input("请输入成绩: "))ifscore>=90:print("A")elifscore>=80:print("B")elifscore>=70:print("C")elifscore>=60:print("D")else:print("E")

29. 打印菱形图案
参考答案:

n=5foriinrange(n):print(" "*(n-i-1)+"*"*(2*i+1))foriinrange(n-2,-1,-1):print(" "*(n-i-1)+"*"*(2*i+1))

30. 简单文件读写(保存姓名和年龄)
参考答案:

name=input("姓名: ")age=input("年龄: ")withopen("info.txt","w",encoding="utf-8")asf:f.write(f"姓名:{name}\n年龄:{age}")withopen("info.txt","r",encoding="utf-8")asf:print(f.read())

做题Tips

  • 每做完一道,立刻运行测试各种输入(边界情况:0、空字符串、负数等)
  • 尝试用列表推导式f-string字典推导式重写代码,让代码更Pythonic
  • 全部做完后,尝试把1-30题打包成一个小程序(菜单选择题号执行)

想看带详细中文解析 + 多种解法的完整版本、进阶版30题(文件操作、异常处理、简单类),或者自动判题脚本,随时告诉我!

现在就开始刷题吧!每天5道,坚持一周,你会明显感觉到进步。加油,小白也能快速变大神!🐍🚀

有不会的题目直接回复题号,我立刻给你详细讲解!

http://www.jsqmd.com/news/480618/

相关文章:

  • Python 变量和数据类型
  • 探讨2026年全屋定制MES软件,如何选择合适的产品 - 工业推荐榜
  • 2026年GEO优化靠谱公司有哪些,鸿犀智能口碑出众 - mypinpai
  • 最近爆火的OpenClaw到底是什么?一文读懂RAG、MCP
  • Java 部署:Jenkins Pipeline 构建 Java 项目(自动化)
  • AWE 2026:“新人车家”时代,机器人引领家电消费新变革
  • 2026 AWE:具身智能机器人开启家庭服务新时代
  • 大树科技电话查询:综合技术驱动型服务客观解析 - 品牌推荐
  • 【开源-Proteus8.9仿真】基于51单片机的四相步进电机控制(ULN2003 + StepMotor + LCD1602) - 少年
  • 腾讯“龙虾”产品矩阵出击,AI 市场风云再起
  • 2026年盘点弗拉门戈舞蹈教学机构,深圳西艺文化口碑怎么样 - mypinpai
  • 总结津胜GEO优势,看看在天津地区使用它靠不靠谱 - 工业品网
  • 汽车贴膜性价比怎么选,肇庆星车驾到这样的公司靠谱吗 - 工业设备
  • 探讨不错的瓷砖建材采购企业,潮州哪家口碑好且费用合理? - 工业品牌热点
  • 说说中欧班列货代品牌企业,珠三角地区哪家口碑比较好? - 工业设备
  • 2026年讲讲津胜GEO,其员工素质能满足服务需求吗 - 工业品牌热点
  • 上海百达翡丽/北京江诗丹顿/杭州爱彼维修推荐?六大城市高端腕表维修全解析 - 时光修表匠
  • 优优推电话查询:了解其服务内容与联系渠道 - 品牌推荐
  • GitHub 热榜项目 - 日榜(2026-03-15)
  • 探讨佛山蓝色防滑漆选购要点,哪个品牌更值得入手 - myqiye
  • 2026年专科生必看!学生热捧的降AIGC平台 —— 千笔·专业降AI率智能体
  • InStreet API 完整参考
  • 专科生也能用!千笔,倍受青睐的AI论文写作软件
  • 选购GEO优化方案,上海地区好用的有哪些 - myqiye
  • 【AI应用出海】
  • 【69页PPT】全生命周期数字健康智慧医共体解决方案:“1”朵健康云、“3”大核心应用、“N”类服务应用迭代、区域医院智慧管理平台...
  • 学长亲荐!AI论文平台 千笔ai写作 VS speedai,专科生写论文更轻松!
  • 优优推电话查询:营销服务风险提示与咨询 - 品牌推荐
  • CF1363D Guess The Maximums 题解
  • 跨境电商WMS的生命周期的庖丁解牛