值得苦练的100道Python经典练手题(附详细答案)

在学习Python编程的旅程中,实践是提升编程能力的最佳方法之一。为了帮助学习者更好地掌握Python,我们整理了100道经典的练手题目,并附上详细的解答。以下是一些精选的练习题目,供大家参考和练习。

1. 打印九九乘法表

题目:用for循环打印出九九乘法表。

答案

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

解析:利用嵌套循环,其中外层循环控制行数,内层循环控制每行的列数。

2. 计算列表的平均值

题目:给定一个数字列表,计算并返回其平均值。

答案

def average(numbers):
    return sum(numbers) / len(numbers) if numbers else 0

num_list = [10, 20, 30, 40, 50]
print("平均值:", average(num_list))

解析:使用sum()函数计算总和,使用len()函数计算长度,二者相除即可得到平均值。

3. 判断素数

题目:编写一个函数,判断给定的数字是否为素数。

答案

def is_prime(n):
    if n <= 1:
        return False
    for i in range(2, int(n**0.5) + 1):
        if n % i == 0:
            return False
    return True

print(is_prime(29))  # 输出: True

解析:素数定义为大于1且除了1和自身没有其他因数的数,通过循环范围到sqrt(n)降低计算量。

4. 反转字符串

题目:编写一个函数,反转输入的字符串。

答案

def reverse_string(s):
    return s[::-1]

print(reverse_string("Hello, World!"))  # 输出: !dlroW ,olleH

解析:利用切片功能,s[::-1]可以快速实现字符串的反转。

5. 找出最大值

题目:从列表中找出最大值。

答案

def find_max(lst):
    if not lst:
        return None
    max_value = lst[0]
    for num in lst:
        if num > max_value:
            max_value = num
    return max_value

print(find_max([2, 5, 9, 1, 0]))  # 输出: 9

解析:通过遍历列表,比较每个元素并更新最大值。

总结

以上简要展示了5道Python练手题目和答案。这仅是100道题目中的冰山一角,其他题目涵盖字符串处理、文件操作、数据结构等多个方面,有助于学生们在实际编程中积累经验。坚持练习这些经典题目,能够有效提高编程能力和逻辑思维能力。希望大家能够逐步挑战这些题目,提升自己的Python水平,并最终成为编程高手!

点赞(0) 打赏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部