django33全栈班2025年014 字典和大量练习题

113 阅读20分钟

前言

嘿,同学们!我们之前已经一起学习了字符串和列表这两种在 Python 编程中非常常用的数据结构啦 大家应该对它们已经有了一定的熟悉度和掌握程度了吧 不过呢,在我们的编程之旅中,还有一种数据结构也相当常用哦,那就是字典啦 这节课呀,就让我们一起开启一段新的学习旅程,来深入探究一下字典这个有趣的数据结构吧 相信通过这节课的学习,大家能够掌握更多的编程技巧,进一步拓宽自己的编程知识面哦 让我们一起努力,在学习字典的过程中,不断提升自己的编程水平,为后续解决更复杂的编程问题做好充足的准备吧 让我们以饱满的热情投入到这节课的学习中,探索字典的奇妙世界,开启一场精彩的知识探索之旅吧!

字典常用方法

以下是 Python 中字典的一些常用方法:

一、元素的添加与更新

  • dict[key] = value

    my_dict = {}
    my_dict["name"] = "Alice"
    print(my_dict)  # 输出: {'name': 'Alice'}
    

    可以直接通过键来添加或更新元素。如果键不存在,则添加元素;如果键已经存在,则更新其对应的值。

  • dict.update([other])

    my_dict = {"name": "Alice"}
    my_dict.update({"age": 25, "city": "New York"})
    print(my_dict)  # 输出: {'name': 'Alice', 'age': 25, 'city': 'New York'}
    

    可使用另一个字典或可迭代对象(元素为键值对)更新原字典,会修改原字典。

二、元素的删除

  • del dict[key]

    my_dict = {"name": "Alice", "age": 25}
    del my_dict["age"]
    print(my_dict)  # 输出: {'name': 'Alice'}
    

    用于删除指定键的元素,如果键不存在会引发 KeyError 异常,使用时要确保键存在或使用 in 关键字进行检查。

  • dict.pop(key[, default])

    my_dict = {"name": "Alice", "age": 25}
    age = my_dict.pop("age")
    print(age)  # 输出: 25
    print(my_dict)  # 输出: {'name': 'Alice'}
    # 使用 default 参数
    city = my_dict.pop("city", "Unknown")
    print(city)  # 输出: Unknown
    

    移除并返回指定键对应的元素,如果键不存在,可以提供 default 参数,若键不存在且未提供 default,会引发 KeyError,若提供了 default,则返回 default

  • dict.popitem()

    my_dict = {"name": "Alice", "age": 25}
    item = my_dict.popitem()
    print(item)  # 输出: ('age', 25) 或 ('name', 'Alice')
    print(my_dict)  # 输出: {'name': 'Alice'} 或 {'age': 25}
    

    移除并返回一个键值对,通常是最后添加的键值对(Python 3.7 及以上保证是最后添加的),若字典为空,会引发 KeyError

三、元素的访问

  • dict[key]

    my_dict = {"name": "Alice", "age": 25}
    name = my_dict["name"]
    print(name)  # 输出: Alice
    

    通过键访问元素,如果键不存在会引发 KeyError 异常。

  • dict.get(key[, default])

    my_dict = {"name": "Alice", "age": 25}
    name = my_dict.get("name")
    print(name)  # 输出: Alice
    city = my_dict.get("city")
    print(city)  # 输出: None
    city = my_dict.get("city", "Unknown")
    print(city)  # 输出: Unknown
    

    通过键获取元素,若键不存在,可设置 default 参数返回默认值,避免 KeyError

四、元素的检查

  • key in dict

    my_dict = {"name": "Alice", "age": 25}
    print("name" in my_dict)  # 输出: True
    print("city" in my_dict)  # 输出: False
    

    检查键是否存在于字典中,返回布尔值。

五、获取键、值和键值对

  • dict.keys()

    my_dict = {"name": "Alice", "age": 25}
    keys = my_dict.keys()
    print(keys)  # 输出: dict_keys(['name', 'age'])
    

    返回一个包含字典所有键的视图对象,可以使用 list() 将其转换为列表。

  • dict.values()

    my_dict = {"name": "Alice", "age": 25}
    values = my_dict.values()
    print(values)  # 输出: dict_values(['Alice', 25])
    

    返回一个包含字典所有值的视图对象,可转换为列表。

  • dict.items()

    my_dict = {"name": "Alice", "age": 25}
    items = my_dict.items()
    print(items)  # 输出: dict_items([('name', 'Alice'), ('age', 25)])
    

    返回一个包含字典所有键值对的视图对象,可转换为列表。

六、字典的复制

  • dict.copy()

    my_dict = {"name": "Alice", "age": 25}
    new_dict = my_dict.copy()
    print(new_dict)  # 输出: {'name': 'Alice', 'age': 25}
    

    复制字典,返回一个浅拷贝的新字典。

七、字典的清空

  • dict.clear()

    my_dict = {"name": "Alice", "age": 25}
    my_dict.clear()
    print(my_dict)  # 输出: {}
    

    清空字典中的所有元素,使其成为空字典。

八、字典的合并

  • 使用 update() 方法(前面已提及)

    dict1 = {"name": "Alice"}
    dict2 = {"age": 25}
    dict1.update(dict2)
    print(dict1)  # 输出: {'name': 'Alice', 'age': 25}
    

    将一个字典的元素添加到另一个字典中。

九、字典的长度

  • len(dict)

    my_dict = {"name": "Alice", "age": 25}
    length = len(my_dict)
    print(length)  # 输出: 2
    

    计算字典中键值对的数量。

这些字典的常用方法可以帮助你轻松地对字典进行各种操作,无论是添加、删除、更新元素,还是检查元素的存在,获取键、值或键值对,以及复制、合并和清空字典等操作,都可以根据实际需求灵活运用哦 无论是存储配置信息、映射关系,还是作为缓存,字典都能发挥重要的作用呢,熟练掌握这些方法将为你在 Python 编程中带来极大的便利。

字典的遍历

在 Python 中,有多种遍历字典的方法,以下是一些常见的遍历字典的方式:

一、遍历键(Keys)

可以使用 for 循环结合 dict.keys() 方法来遍历字典的键。

my_dict = {"name": "Alice", "age": 25, "city": "New York"}

# 方法一:使用 dict.keys()
for key in my_dict.keys():
    print(key)

# 方法二:直接遍历字典(默认遍历键)
for key in my_dict:
    print(key)

解释

  • my_dict.keys() 方法返回一个包含字典中所有键的视图对象。使用 for 循环遍历这个视图对象,会依次取出每个键。
  • 直接使用 for key in my_dict 也可以遍历字典的键,因为默认情况下,for 循环会遍历字典的键。

二、遍历值(Values)

使用 for 循环结合 dict.values() 方法来遍历字典的值。

my_dict = {"name": "Alice", "age": 25, "city": "New York"}

for value in my_dict.values():
    print(value)

解释

  • my_dict.values() 方法返回一个包含字典中所有值的视图对象。使用 for 循环遍历这个视图对象,会依次取出每个值。

三、遍历键值对(Items)

使用 for 循环结合 dict.items() 方法来遍历字典的键值对。

my_dict = {"name": "Alice", "age": 25, "city": "New York"}

for key, value in my_dict.items():
    print(f"Key: {key}, Value: {value}")

解释

  • my_dict.items() 方法返回一个包含字典中所有键值对的视图对象,其中每个元素是一个元组 (key, value)
  • for 循环中使用 key, value 可以直接解包元组,让代码更简洁,方便同时获取键和值。

四、使用 enumerate 函数遍历

如果你需要同时获得键值对的索引和键值对本身,可以使用 enumerate 函数。

my_dict = {"name": "Alice", "age": 25, "city": "New York"}

for index, (key, value) in enumerate(my_dict.items()):
    print(f"Index: {index}, Key: {key}, Value: {value}")

解释

  • enumerate 函数会为迭代对象添加索引,对于 my_dict.items() 来说,每次迭代会返回 (index, (key, value))
  • 我们使用 index, (key, value) 解包这个元组,得到索引、键和值。

五、使用 iteritems()

在 Python 2 中,可以使用 iteritems() 方法,它返回一个迭代器,避免创建键值对列表,提高性能。在 Python 3 中,可以使用 items() 方法代替,因为 items() 在 Python 3 中也返回迭代器。

# Python 2 中的用法
# for key, value in my_dict.iteritems():
#     print(key, value)

# Python 3 中的用法
for key, value in my_dict.items():
    print(key, value)

六、使用 iterkeys()itervalues()

在 Python 2 中,iterkeys()itervalues() 分别返回键和值的迭代器,Python 3 中可以使用 keys()values() 代替,因为它们在 Python 3 中也返回迭代器。

# Python 2 中的用法
# for key in my_dict.iterkeys():
#     print(key)
# for value in my_dict.itervalues():
#     print(value)

# Python 3 中的用法
for key in my_dict.keys():
    print(key)
for value in my_dict.values():
    print(value)

总结

  • 最常用的遍历方式是使用 for key in my_dict 遍历键,使用 for value in my_dict.values() 遍历值,使用 for key, value in my_dict.items() 遍历键值对。
  • 当需要同时获取键值对的索引时,可以使用 enumerate 函数结合 my_dict.items()
  • 这些遍历方法提供了不同的灵活性,可以根据具体需求选择合适的方式来遍历字典,方便你对字典中的元素进行各种操作,例如修改元素、查找元素或执行其他相关操作。

通过这些不同的遍历方法,你可以根据具体的需求灵活处理字典中的元素,无论是简单的数据查看、修改,还是更复杂的数据处理任务,都能轻松应对啦 希望这些信息对你有所帮助哦,让你在使用字典时更加得心应手

课堂练习

以下是结合 pywebio3 和字典的五道课堂练习题:

练习一:添加和更新字典元素

题目: 使用 pywebio3 编写一个程序,让用户输入一个初始字典(键值对用冒号分隔,键值对之间用逗号分隔)和一个新的键值对(键和值用冒号分隔),将新键值对添加或更新到字典中,并输出结果。

分析: 本题考查字典元素的添加和更新操作,以及 pywebio3 的输入输出功能。学生需要掌握如何将用户输入的字符串解析为字典,并使用相应的方法添加或更新元素。

参考代码

from pywebio3.input import input_group, input
from pywebio3.output import put_text


def add_or_update_dict():
    # 获取用户输入的初始字典和新键值对
    data = input_group("请输入一个初始字典(键值对用冒号分隔,键值对之间用逗号分隔)和一个新键值对(键和值用冒号分隔)", [
        input(name='dict_str',),
        input(name='new_pair',)
    ])
    original_dict = dict(item.split(':') for item in data['dict_str'].split(','))
    new_key, new_value = data['new_pair'].split(':')
    original_dict[new_key] = new_value
    put_text(f"更新后的字典是:{original_dict}")


if __name__ == "__main__":
    add_or_update_dict()

代码解释

  1. 使用 input_group 函数获取用户输入的初始字典和新键值对。
  2. 使用列表推导式和 split(':') 方法将初始字典字符串拆分为键值对,存储在 original_dict 中。
  3. 拆分新键值对并存储在 new_keynew_value 中。
  4. 使用 original_dict[new_key] = new_value 来添加或更新字典元素。
  5. 使用 put_text 函数输出更新后的字典。

练习二:删除字典元素

题目: 使用 pywebio3 编写一个程序,让用户输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔)和一个键,从字典中删除该键对应的元素,并输出结果。

分析: 本题涉及字典元素的删除操作和 pywebio3 的输入输出。学生需要考虑键不存在的情况,避免出现 KeyError

参考代码

from pywebio3.input import input_group, input
from pywebio3.output import put_text


def remove_dict_element():
    # 获取用户输入的字典和要删除的键
    data = input_group("请输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔)和一个键", [
        input(name='dict_str',),
        input(name='key',)
    ])
    original_dict = dict(item.split(':') for item in data['dict_str'].split(','))
    key = data['key']
    if key in original_dict:
        del original_dict[key]
        put_text(f"删除元素后的字典是:{original_dict}")
    else:
        put_text(f"键 '{key}' 不存在于字典中。")


if __name__ == "__main__":
    remove_dict_element()

代码解释

  1. 使用 input_group 函数获取用户输入的字典和要删除的键。
  2. 解析输入的字典字符串存储在 original_dict 中。
  3. 检查键是否存在于字典中,若存在则使用 del 删除元素并输出结果,若不存在则输出相应提示。

练习三:查找字典元素

题目: 使用 pywebio3 编写一个程序,让用户输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔)和一个键,查找并输出该键对应的值。如果键不存在,输出相应提示。

分析: 本题考查字典元素的查找操作和 pywebio3 的输入输出。学生需要使用 get() 方法避免 KeyError

参考代码

from pywebio3.input import input_group, input
from pywebio3.output import put_text


def find_dict_value():
    # 获取用户输入的字典和要查找的键
    data = input_group("请输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔)和一个键", [
        input(name='dict_str',),
        input(name='key',)
    ])
    original_dict = dict(item.split(':') for item in data['dict_str'].split(','))
    key = data['key']
    value = original_dict.get(key)
    if value is not None:
        put_text(f"键 '{key}' 对应的值是:{value}")
    else:
        put_text(f"键 '{key}' 不存在于字典中。")


if __name__ == "__main__":
    find_dict_value()

代码解释

  1. 使用 input_group 函数获取用户输入的字典和查找的键。
  2. 解析输入的字典字符串存储在 original_dict 中。
  3. 使用 get() 方法查找键对应的值,根据结果输出相应信息。

练习四:遍历字典并输出

题目: 使用 pywebio3 编写一个程序,让用户输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔),使用 for 循环遍历字典并将键值对输出到页面。

分析: 本题考查字典的遍历操作和 pywebio3 的输出功能。学生需要使用 items() 方法遍历字典的键值对。

参考代码

from pywebio3.input import input as pw_input
from pywebio3.output import put_text


def traverse_dict():
    # 获取用户输入的字典
    original_dict = pw_input("请输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔)")
    output_text = ""
    for key, value in dict(item.split(':') for item in original_dict.split(',')).items():
        output_text += f"键: {key}, 值: {value}\n"
    put_text(output_text)


if __name__ == "__main__":
    traverse_dict()

代码解释

  1. 使用 pw_input 函数获取用户输入的字典。
  2. 解析输入的字典字符串并存储在字典中。
  3. 使用 items() 方法遍历字典,将键值对添加到 output_text 中并输出。

练习五:字典元素计数

题目: 使用 pywebio3 编写一个程序,让用户输入一个包含元素的列表,将列表元素作为键,元素出现的次数作为值存储在字典中,并输出结果。

分析: 本题考查列表元素的遍历和字典元素的更新操作,以及 pywebio3 的输入输出功能。

参考代码

from pywebio3.input import input as pw_input
from pywebio3.output import put_text


def count_elements_in_list():
    # 获取用户输入的列表
    input_list = pw_input("请输入一个列表(元素之间用逗号分隔)").split(',')
    count_dict = {}
    for item in input_list:
        if item in count_dict:
            count_dict[item] += 1
        else:
            count_dict[item] = 1
    put_text(f"元素计数的字典是:{count_dict}")


if __name__ == "__main__":
    count_elements_in_list()

代码解释

  1. 使用 pw_input 函数获取用户输入的列表并拆分为元素列表。
  2. 初始化一个空字典 count_dict
  3. 遍历列表元素,若元素已在字典中,将其对应的值加 1;若不在,将其添加到字典中并将值初始化为 1。
  4. 使用 put_text 函数输出结果。

通过这些练习,学生可以更好地掌握字典的操作和 pywebio3 的使用,提高在 Web 环境下处理字典数据的能力。同时,他们将学会如何将用户输入转换为字典数据,以及如何对字典进行添加、删除、查找、遍历和元素计数等操作。

课后练习

以下是结合 pywebio3 和字典相关知识点的五道课后练习题:

练习一:字典元素的合并

题目: 使用 pywebio3 编写一个程序,让用户输入两个字典(键值对用冒号分隔,键值对之间用逗号分隔),将两个字典合并,并输出结果。如果有重复的键,后输入的键值对覆盖前一个,使用 update() 方法。

分析: 本题主要考查字典的 update() 方法和 pywebio3 的输入输出功能。学生需要将用户输入的字符串形式的字典转换为真正的字典,并处理合并操作。

参考代码

from pywebio3.input import input_group, input
from pywebio3.output import put_text


def merge_dictionaries():
    # 获取用户输入的两个字典
    data = input_group("请输入两个字典(键值对用冒号分隔,键值对之间用逗号分隔)", [
        input(name='dict1_str',),
        input(name='dict2_str',)
    ])
    dict1 = dict(item.split(':') for item in data['dict1_str'].split(','))
    dict2 = dict(item.split(':') for item in data['dict2_str'].split(','))
    dict1.update(dict2)
    put_text(f"合并后的字典是:{dict1}")


if __name__ == "__main__":
    merge_dictionaries()

代码解释

  1. 使用 input_group 函数从用户那里获取两个字典的字符串表示。
  2. 通过列表推导式和 split(':')split(',') 将输入的字符串转换为字典存储在 dict1dict2 中。
  3. 使用 update() 方法将 dict2 合并到 dict1 中。
  4. 使用 put_text 函数输出合并后的字典。

练习二:字典键值对的筛选

题目: 使用 pywebio3 编写一个程序,让用户输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔)和一个值,筛选出值等于该输入值的所有键值对,并输出结果。

分析: 本题涉及到字典的遍历和条件判断,以及 pywebio3 的输入输出功能。学生需要遍历字典,找出满足条件的键值对。

参考代码

from pywebio3.input import input_group, input
from pywebio3.output import put_text


def filter_dictionary():
    # 获取用户输入的字典和筛选的值
    data = input_group("请输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔)和一个值", [
        input(name='dict_str',),
        input(name='value',)
    ])
    original_dict = dict(item.split(':') for item in data['dict_str'].split(','))
    target_value = data['value']
    filtered_dict = {}
    for key, value in original_dict.items():
        if value == target_value:
            filtered_dict[key] = value
    put_text(f"筛选后的字典是:{filtered_dict}")


if __name__ == "__main__":
    filter_dictionary()

代码解释

  1. 使用 input_group 函数获取用户输入的字典和筛选的值。
  2. 将输入的字典字符串转换为字典存储在 original_dict 中。
  3. 初始化 filtered_dict 用于存储筛选结果。
  4. 遍历 original_dict,将满足条件的键值对添加到 filtered_dict 中。
  5. 使用 put_text 函数输出筛选后的字典。

练习三:字典的键值对交换

题目: 使用 pywebio3 编写一个程序,让用户输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔),将字典的键和值交换,并输出结果。注意处理值不唯一的情况。

分析: 本题考查字典的遍历和元素添加操作,以及 pywebio3 的输入输出。对于值不唯一的情况,可能需要将新键的值存储为列表。

参考代码

from pywebio3.input import input as pw_input
from pywebio3.output import put_text


def swap_key_value():
    # 获取用户输入的字典
    original_dict = pw_input("请输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔)")
    swapped_dict = {}
    for key, value in dict(item.split(':') for item in original_dict.split(',')).items():
        if value in swapped_dict:
            if isinstance(swapped_dict[value], list):
                swapped_dict[value].append(key)
            else:
                swapped_dict[value] = [swapped_dict[value], key]
        else:
            swapped_dict[value] = key
    put_text(f"交换键值对后的字典是:{swapped_dict}")


if __name__ == "__main__":
    swap_key_value()

代码解释

  1. 使用 pw_input 函数获取用户输入的字典。
  2. 初始化 swapped_dict 用于存储交换后的键值对。
  3. 遍历原始字典,对于每个键值对,检查值是否已在 swapped_dict 中,若在且值是列表,将新键添加到列表中,若在但不是列表,将原键存储为列表添加新键,若不在则添加新键。
  4. 使用 put_text 函数输出交换后的字典。

练习四:字典元素的排序

题目: 使用 pywebio3 编写一个程序,让用户输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔),将字典按照键或值的升序排序,并输出结果。用户可选择按键排序还是按值排序。

分析: 本题考查字典元素的排序和 pywebio3 的输入输出,需要使用 sorted() 函数,并根据用户选择排序依据。

参考代码

from pywebio3.input import input_group, input
from pywebio3.output import put_text


def sort_dictionary():
    # 获取用户输入的字典和排序依据
    data = input_group("请输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔)和排序依据(键或值)", [
        input(name='dict_str',),
        input(name='sort_by',)
    ])
    original_dict = dict(item.split(':') for item in data['dict_str'].split(','))
    sort_by = data['sort_by']
    if sort_by == '键':
        sorted_dict = dict(sorted(original_dict.items(), key=lambda x: x[0]))
    elif sort_by == '值':
        sorted_dict = dict(sorted(original_dict.items(), key=lambda x: x[1]))
    else:
        put_text("请输入有效的排序依据(键或值)。")
        return
    put_text(f"排序后的字典是:{sorted_dict}")


if __name__ == "__main__":
    sort_dictionary()

代码解释

  1. 使用 input_group 函数获取用户输入的字典和排序依据。
  2. 将输入的字典字符串转换为字典存储在 original_dict 中。
  3. 根据用户输入的排序依据,使用 sorted() 函数和 lambda 函数进行排序,存储在 sorted_dict 中。
  4. 使用 put_text 函数输出排序后的字典。

练习五:字典的嵌套操作

题目: 使用 pywebio3 编写一个程序,让用户输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔),其中某些值是列表。让用户输入一个键和一个元素,将该元素添加到该键对应的列表中,如果键不存在则创建列表并添加元素,并输出结果。

分析: 本题考查字典的嵌套结构操作和 pywebio3 的输入输出,需要处理键不存在的情况。

参考代码

from pywebio3.input import input_group, input
from pywebio3.output import put_text


def nested_dict_operation():
    # 获取用户输入的字典和要添加元素的键和元素
    data = input_group("请输入一个字典(键值对用冒号分隔,键值对之间用逗号分隔),一个键和一个元素", [
        input(name='dict_str',),
        input(name='key',),
        input(name='element',)
    ])
    original_dict = dict(item.split(':') for item in data['dict_str'].split(','))
    key = data['key']
    element = data['element']
    if key in original_dict:
        if isinstance(original_dict[key], list):
            original_dict[key].append(element)
        else:
            original_dict[key] = [original_dict[key], element]
    else:
        original_dict[key] = [element]
    put_text(f"更新后的字典是:{original_dict}")


if __name__ == "__main__":
    nested_dict_operation()

代码解释

  1. 使用 input_group 函数获取用户输入的字典、键和元素。
  2. 将输入的字典字符串转换为字典存储在 original_dict 中。
  3. 检查键是否存在,若存在且值是列表,添加元素,若存在但不是列表,将原元素和新元素存储为列表,若不存在则创建列表添加元素。
  4. 使用 put_text 函数输出更新后的字典。

通过这些课后练习,学生可以进一步巩固和拓展对字典操作的掌握,同时提升使用 pywebio3 进行用户交互和结果展示的能力,在实际操作中更深入地理解字典的各种特性和使用场景。

总结

本节课的主要内容是对字典的学习哦 我们一起深入探索了字典这个重要的数据结构,详细学习了它的常用方法呢 不仅如此,我们还对字典的遍历方法进行了全面的学习,包括如何遍历字典的键、值以及键值对,让大家掌握了多种灵活的遍历技巧哦 为了让大家更好地理解和掌握这些知识,我们精心设计并完成了大量的练习,让大家在实践中不断运用字典的常用方法和遍历方法,亲身体验它们在不同编程场景下的实际应用呢 希望通过这些学习和练习,大家能够更加熟练地使用字典,在处理数据时能够灵活运用字典的各种操作,为解决更复杂的编程问题打下坚实的基础哦 让我们继续在编程的道路上努力前行,不断提升自己的编程水平,开启更多精彩的编程之旅吧 相信大家在这个过程中,会对 Python 编程中的字典运用更加得心应手,取得更大的进步呢

宝子们,我在 Python 的世界里摸爬滚打十余载,积累了不少心得体会。如今想把这些年的经验和知识毫无保留地分享给有缘的小伙伴。要是你对 Python 学习感兴趣,欢迎来试听一二,也可以随时在评论区留言或者私信我,咱们一起探讨,共同进步,开启 Python 学习的奇妙之旅!

人生苦短, 我用Python, 坚持每天学习, 坚持每天进步一点点...