news 2026/4/18 5:23:29

Python入门每周一练(10道题)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python入门每周一练(10道题)

基础语法题

题目1:Hello World与用户输入

# 编写一个程序,首先打印"欢迎学习Python!" # 然后让用户输入自己的名字,并输出"你好, [名字]!"

题目2:基本运算器

# 编写一个程序,让用户输入两个数字和一个运算符(+、-、*、/) # 根据运算符进行相应的计算并输出结果 # 注意处理除数为0的情况

条件判断题

题目3:成绩等级判断

# 输入一个0-100之间的成绩,根据以下规则输出等级: # 90-100: A # 80-89: B # 70-79: C # 60-69: D # 0-59: E # 如果输入不在0-100之间,提示"输入错误"

题目4:闰年判断

# 输入一个年份,判断是否为闰年 # 闰年规则:能被4整除但不能被100整除,或者能被400整除 # 输出"是闰年"或"不是闰年"

循环练习题

题目5:乘法表生成

# 使用循环打印9*9乘法表 # 输出格式: # 1*1=1 # 1*2=2 2*2=4 # 1*3=3 2*3=6 3*3=9 # ...以此类推

题目6:数字猜猜乐

# 程序随机生成1-100之间的数字 # 让用户猜数字,每次提示"太大"或"太小" # 猜中后显示"恭喜!你猜了X次"

数据结构题

题目7:列表操作

# 创建一个空列表 # 1. 让用户输入5个数字添加到列表中 # 2. 计算列表的总和与平均值 # 3. 找出列表中的最大值和最小值 # 4. 将列表排序后输出

题目8:学生成绩统计

# 创建一个字典,存储5个学生的成绩 # 格式:{姓名: 成绩} # 要求: # 1. 计算平均分 # 2. 找出最高分和对应的学生 # 3. 找出不及格(<60)的学生名单

函数练习题

题目9:斐波那契数列生成器

# 编写一个函数,接收一个整数n # 返回前n个斐波那契数列 # 斐波那契数列:1, 1, 2, 3, 5, 8, 13...

题目10:简单文本分析器

# 编写一个函数,接收一段文本 # 返回以下统计信息: # 1. 字符总数 # 2. 单词总数(以空格分隔) # 3. 每个字母出现的次数(忽略大小写)

参考答案(完整代码)

题目1答案

print("欢迎学习Python!") name = input("请输入你的名字:") print(f"你好, {name}!")

题目2答案

num1 = float(input("请输入第一个数字:")) num2 = float(input("请输入第二个数字:")) operator = input("请输入运算符(+, -, *, /):") if operator == "+": result = num1 + num2 elif operator == "-": result = num1 - num2 elif operator == "*": result = num1 * num2 elif operator == "/": if num2 != 0: result = num1 / num2 else: print("错误:除数不能为0!") exit() else: print("错误:无效的运算符!") exit() print(f"{num1} {operator} {num2} = {result}")

题目3答案

score = float(input("请输入成绩(0-100):")) if 0 <= score <= 100: if score >= 90: grade = "A" elif score >= 80: grade = "B" elif score >= 70: grade = "C" elif score >= 60: grade = "D" else: grade = "E" print(f"成绩等级:{grade}") else: print("输入错误:成绩必须在0-100之间")

题目4答案

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

题目5答案

for i in range(1, 10): for j in range(1, i + 1): print(f"{j}*{i}={i*j}", end="\t") print() # 换行

题目6答案

import random target = random.randint(1, 100) count = 0 print("猜数字游戏开始!数字在1-100之间") while True: guess = int(input("请输入你的猜测:")) count += 1 if guess < target: print("太小了,再试试!") elif guess > target: print("太大了,再试试!") else: print(f"恭喜!你猜对了!数字是{target}") print(f"你总共猜了{count}次") break

题目7答案

numbers = [] print("请输入5个数字:") for i in range(5): num = float(input(f"数字{i+1}:")) numbers.append(num) # 计算总和与平均值 total = sum(numbers) average = total / len(numbers) # 找出最大值和最小值 max_num = max(numbers) min_num = min(numbers) # 排序 sorted_numbers = sorted(numbers) print(f"\n列表内容:{numbers}") print(f"总和:{total}") print(f"平均值:{average}") print(f"最大值:{max_num}") print(f"最小值:{min_num}") print(f"排序后:{sorted_numbers}")

题目8答案

# 创建学生成绩字典 students = { "张三": 85, "李四": 92, "王五": 78, "赵六": 55, "孙七": 88 } # 计算平均分 total_score = sum(students.values()) average_score = total_score / len(students) # 找出最高分 max_score = max(students.values()) top_students = [name for name, score in students.items() if score == max_score] # 找出不及格学生 failed_students = [name for name, score in students.items() if score < 60] print("学生成绩统计:") print(f"平均分:{average_score:.2f}") print(f"最高分:{max_score},学生:{', '.join(top_students)}") print(f"不及格学生:{', '.join(failed_students) if failed_students else '无'}")

题目9答案

def fibonacci(n): """返回前n个斐波那契数列""" if n <= 0: return [] elif n == 1: return [1] elif n == 2: return [1, 1] fib = [1, 1] for i in range(2, n): next_num = fib[i-1] + fib[i-2] fib.append(next_num) return fib # 测试函数 n = int(input("请输入要生成的斐波那契数列长度:")) result = fibonacci(n) print(f"前{n}个斐波那契数列:{result}")

题目10答案

def text_analyzer(text): """分析文本的统计信息""" # 字符总数 char_count = len(text) # 单词总数 words = text.split() word_count = len(words) # 字母统计(忽略大小写) letter_count = {} for char in text.lower(): if char.isalpha(): # 只统计字母 letter_count[char] = letter_count.get(char, 0) + 1 return { "字符总数": char_count, "单词总数": word_count, "字母统计": letter_count } # 测试函数 sample_text = "Hello World! This is a test. Hello again." print("分析文本:", sample_text) analysis = text_analyzer(sample_text) print(f"\n字符总数:{analysis['字符总数']}") print(f"单词总数:{analysis['单词总数']}") print("\n字母出现次数:") for letter, count in sorted(analysis['字母统计'].items()): print(f" {letter}: {count}")

学习建议

  1. 循序渐进:按顺序完成题目,每道题都要理解

  2. 独立思考:先尝试自己写,再看答案

  3. 调试练习:故意写错代码,学习如何排查错误

  4. 举一反三:完成基础要求后,尝试添加新功能

  5. 每日一题:每天完成1-2题,保持学习节奏

祝你学习顺利!如果有任何问题,随时可以问。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/8 18:39:26

从入门到精通:大模型微调实战全攻略

在人工智能领域&#xff0c;大语言模型已经展现出了令人惊叹的语言理解和生成能力。然而&#xff0c;对于许多企业和开发者而言&#xff0c;直接使用这些通用模型往往难以满足特定的业务需求。医疗AI需要理解专业的医学术语&#xff0c;客服机器人需要掌握特定的话术规范&#…

作者头像 李华
网站建设 2026/4/17 18:32:39

CANN异构架构:以ops-nn为翼,驱动AIGC底层计算新突破

CANN异构架构&#xff1a;以ops-nn为翼&#xff0c;驱动AIGC底层计算新突破 AIGC技术的产业化落地&#xff0c;核心在于底层计算架构对算法的高效支撑&#xff0c;而华为CANN&#xff08;Compute Architecture for Neural Networks&#xff09;作为面向AI场景打造的异构计算架…

作者头像 李华
网站建设 2026/4/14 2:16:54

MICRON美光 MT41K128M16JT-125 IT:K BGA96 DDR SDRAM

特性VnnVnno1.35V (1.283-1.45V)向后兼容至VDDVDDQ1.5V0.075V 差分双向数据触发信号 . 8n位预取架构 差分时钟输入(CK&#xff0c;CK#) 8个内部存储单元 用于数据、触发和掩码信号的标称与动态片上终端(ODT) 可编程CAS(读取)延迟(CL)可编程的预写CAS附加延迟(AL)可编程CAS(写…

作者头像 李华
网站建设 2026/4/16 12:28:56

情感分析十年演进

情感分析&#xff08;Sentiment Analysis&#xff09; 的十年&#xff08;2015–2025&#xff09;&#xff0c;是从“识别关键词的正负向”到“理解人类复杂情感光谱”&#xff0c;再到“具备心理学常识的语义推理”的飞跃。 这十年中&#xff0c;情感分析不仅准确度大幅提升&a…

作者头像 李华
网站建设 2026/4/18 0:36:17

语义理解十年演进

语义理解&#xff08;Semantic Understanding&#xff09; 的十年&#xff08;2015–2025&#xff09;&#xff0c;是从“符号匹配”向“统计模拟”&#xff0c;再到“逻辑推理与世界模型”演进的十年。 这十年中&#xff0c;语义理解完成了从识别“是什么”到理解“为什么”&a…

作者头像 李华
网站建设 2026/4/17 16:38:19

26年2月7日复盘总结,大盘方向,操作建议,板块机会,实用干货

26年2月7日复盘总结&#xff0c;大盘方向&#xff0c;操作建议&#xff0c;板块机会&#xff0c;实用干货大盘指数从2000-2025年春节前5天上涨的概率为70%&#xff0c;从2005-2025年春节前5天上涨的概率达80%&#xff0c;并且春节节后5天上涨的概率也是比较高的。这是大数据的统…

作者头像 李华