python的列表与字典的小练习

本文通过两个习题展示了Python中对列表和字典的基本操作。习题一涉及列表的增删排序、去重和切片等操作,习题二涵盖了字典的取值、赋值、获取元素及遍历键值对的方法。通过实例代码,帮助读者巩固Python基础知识。

习题一:
定义一个列表:[1, 2, 3, 4, 5, 3, 4, 5, 8]
1.增加一个元素10
2.删除一个指定元素5
3.对列表进行排序
4.对排序过的列表进行倒置
5.对列表内元素进行去重
6.对列表进行切片,取出偶数下标的元素

代码实现:
list_data = list((1, 2, 3, 4, 5, 6, 7, 8))
print(list_data)
1.
return_value = list_data.append(10)
print(list_data, return_value)
2.
return_value = list_data.remove(5)
print(list_data)
3.
list_data.sort()
print(list_data)
4.
list_data.reverse()
print(list_data)
或者
print(list_data[::-1])
5.
list_data1 = list(set(list_data))
print(list_data1)
6.
print(’’, list_data1[0::2])
结果:
在这里插入图片描述

习题二:
定义一个字典:{“name”: “张三”, “age”: 18, “gender”: “男”}
1.获取第一个元素的value
2.获取key为address的元素,且返回:陕西
3.修改key为age的值: 18-》20
4.获取所有的元素
5.获取所有的key
6.获取所有的value

代码实现:
1.
dict_data = {“name”: “张三”, “age”: 18, “gender”: “

### Python 数据结构练习题 #### 元组练习 创建一个元组 `a_tuple` 并对其进行解包: ```python a_tuple = ('apple', 'banana', 'cherry', 'date', 'elderberry') a, b, c, d, e = a_tuple print(a, b, c, d, e) # 输出: apple banana cherry date elderberry ``` 统计元组中特定元素出现的次数并找到其位置: ```python count_of_banana = a_tuple.count('banana') # 计数'banana' index_of_cherry = a_tuple.index('cherry') # 查找'cherry'的位置 print(f"'banana' 出现了 {count_of_banana} 次,在索引 {index_of_cherry} 处找到了 'cherry'") ``` 交换两个变量中的值而不使用临时变量: ```python x, y = 'hello', 'world' y, x = x, y print(x, y) # 输出: hello world ``` #### 列表练习 遍历含有不同类型数据项的列表,处理可能存在的嵌套列表或元组: ```python mixed_list = ['string', 123, (456, 789), {'key': 'value'}, [10, 20]] for item in mixed_list: if isinstance(item, list) or isinstance(item, tuple): print(f"Found container with items: {item}") else: print(f"Item is of type {type(item).__name__}: {item}") ``` 合并两个列表一个新的列表: ```python list_one = [1, 2, 3] list_two = [4, 5, 6] combined_list = list_one + list_two # 方法:直接相加 # 或者使用 extend() 方法 list_three = [] list_three.extend(list_one) list_three.extend(list_two) print(combined_list) # 结果相同于 list_three ``` #### 集合练习 展示如何向集合添加新成员、移除现有成员以及执行基本的集合运算: ```python set_a = {1, 2, 3} set_b = {3, 4, 5} union_set = set_a | set_b # 合并去重 intersection_set = set_a & set_b # 获取交集 difference_ab = set_a - set_b # A 对 B 的差集 symmetric_difference = set_a ^ set_b # 不同的部分(对称差异) print(union_set, intersection_set, difference_ab, symmetric_difference) ``` #### 字典练习 构建基于给定条件的新字典实例: ```python my_list = [(1, 'a'), (2, 'b'), (3, 'c')] my_dict = {1: {1, 2}, 2: {3, 4}, 3: {5, 6}} new_dict = {} for num, letter in my_list: total_sum = sum(my_dict[num]) # 假设num总是存在于my_dict中 new_dict[letter] = total_sum print(new_dict) # 应该会输出 {'a': 3, 'b': 7, 'c': 11} ``` 检查是否存在,并安全地访问对应的值;如果不存在则返回默认值: ```python sample_dict = {"fruit": "apple", "color": "red"} favorite_fruit = sample_dict.get("fruit", "orange") # 存在所以取到的是 "apple" missing_item = sample_dict.get("size", "medium") # 缺失因此得到的是 "medium" print(favorite_fruit, missing_item) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值