Python 基础编程练习题精解

Python 基础编程练习题精解_第1张图片

目录

  1. 基础输入输出
  2. 数值运算
  3. 流程控制
  4. 列表操作
  5. 字符串处理
  6. 字典操作
  7. 数学问题

基础输入输出

1. 输入名字并输出问候语

思路:使用 input() 获取输入,字符串拼接输出
注意:输入可能包含首尾空格,建议使用 strip() 处理

name = input().strip()
print(f"Hello, {name}!")

6. 摄氏度转华氏度

公式华氏度 = 摄氏度 × 9/5 + 32
技巧:使用格式化输出保留两位小数

celsius = float(input())
fahrenheit = celsius * 9/5 + 32
print(f"{fahrenheit:.2f}")

数值运算

2. 计算两个整数的和

关键点split() 分割输入,map() 类型转换
注意:输入有效性校验(示例省略校验)

# 输入示例:3 5
a, b = map(int, input().split())
print(a + b)

5. 交换两个变量的值

Python特性:元组解包实现无需临时变量

a, b = 5, 10
a, b = b, a  # 等价于 (a, b) = (b, a)
print(a, b)  # 输出:10 5

流程控制

3. 判断奇偶数

核心逻辑:取模运算 % 的应用

num = int(input())
print("偶数" if num % 2 == 0 else "奇数")

4. 输出1到10的整数

两种循环实现

# for循环(推荐)
for i in range(1, 11):
    print(i)

# while循环
num = 1
while num <= 10:
    print(num)
    num += 1

列表操作

10. 找出列表最大值(不用max)

算法:遍历比较法
输入处理:使用 eval() 解析列表(实际应用建议用 ast.literal_eval

# 输入示例:[3, 7, 2, 9]
nums = eval(input())  # 注意:eval有安全风险,仅作示例
max_num = nums[0]
for num in nums:
    if num > max_num:
        max_num = num
print(max_num)

12. 生成斐波那契数列

递推公式F(n) = F(n-1) + F(n-2)
优化点:动态规划思想

n = int(input())
fib = [0, 1]
for i in range(2, n):
    fib.append(fib[i-1] + fib[i-2])
print(fib[:n])  # 处理n=1的特殊情况

字符串处理

8. 检查回文字符串(增强版)

改进点:忽略大小写和空格
算法:双指针法(更高效)

s = input().lower().replace(" ", "")  # 预处理
is_palindrome = s == s[::-1]
print("是回文" if is_palindrome else "不是回文")

9. 统计字符出现次数

方法:字符串 count() 方法

# 输入示例:hello l
s, char = input().split()  # 拆分输入到变量
print(s.count(char))

字典操作

14. 合并两个字典

Python 3.9+特性| 运算符合并字典
传统方法update() 方法

dict1 = {'a': 1}
dict2 = {'b': 2}
merged = dict1 | dict2  # Python 3.9+ 语法
# 或:merged = {**dict1, **dict2}
print(merged)

数学问题

15. 计算圆的面积

注意:使用数学模块获取精确π值

import math
radius = float(input())
area = math.pi * radius ** 2
print(f"{area:.2f}")  # 保留两位小数

16. 高效判断质数

优化算法:试除法优化(检查到√n即可)
特殊处理:排除偶数

def is_prime(n):
    if n <= 1:
        return False
    if n <= 3:
        return True
    if n % 2 == 0 or n % 3 == 0:
        return False
    i = 5
    while i * i <= n:
        if n % i == 0 or n % (i+2) == 0:
            return False
        i += 6
    return True

num = int(input())
print("是质数" if is_prime(num) else "不是质数")

扩展练习建议

  1. 为每个题目添加异常处理
  2. 尝试用不同方法实现同一题目
  3. 对代码进行时间复杂度分析
  4. 设计单元测试验证程序正确性

通过系统练习这些题目,读者可以掌握Python基础编程的核心技能,为后续学习打下坚实基础。

你可能感兴趣的:(python基础,python,windows,开发语言)