Python中的列表、元组和字典

一、列表

假如去一家餐厅吃饭,对于琳琅满目的菜式,有的想吃这个,有的想吃那个,如果我们能创建一个系统来写来记录是不是很方便呢~,但如果对每个菜品都赋值变量,那太繁琐了。

a = "hamburger"
b = "coke"
c = "French fries"
d = "pineapple pipes"
e = "ice-cream"
f = "egg tarts"

因此、对于想经常变化的菜品,这个目标/元素,在python中我们就用’列表’来搞定!

menu_list = ['hamburger', 'coke', 'French fries',
             'pineapple pipes']

列表支持变化元素,我们就不用在单独修改某个元素,再在一个个传给列表变量。比如:

menu_list = []  # 先创建一个空列表

b = 'coke'
b = b.upper()  # 将 b元素 大写
menu_list.append(b)  # 将大写b元素放进列表[]

print(menu_list)  # 最后得到本次列表

所以有了列表,直接操作会方便许多,如下:

menu_list[0] = a.upper()  # 将a元素变大写
menu_list.remove(d)  # 将d元素从列表中删除

menu_list.insert(2, e)  # 在指定位置,此处放在'2',也就是第3个位置,增加元素e

print(menu_list)

在本次操作中我用了“索引”的方法,对位置0也就是第一个元素进行大写(upper),对元素d进行删除,然后用了’insert’增加,与’append’末位增加相比,insert能指定位置插入增加。结果如下:

总之,Python 中的列表(list)用途广泛,提供了多种内置函数来操作列表。

关于列表一些常用内置函数:

1. append(x):在列表的末尾添加一个元素 x。

2. extend( list_two ):将一个可迭代对象(如另一个列表)的所有元素添加到列表末尾。

3. insert(p, x):在指定位置p插入一个元素 x。

4. remove(x):删除列表中第一个值为 x 的元素。

5. pop( [p] ):删除列表中指定位置p的元素,并返回该元素。如果不指定位置,默认删除并返回列表中的最后一个元素。

6. clear( ):清空列表中的所有元素。

7. index (x [, start [, end] ] ):返回列表中第一个值为 x 的元素的索引,可以指定搜索的 起始 start 和 结束 end 位置。

8. count(x):返回元素 x 在列表中出现的次数

9. sort ( key=None, reverse=False):对列表中的元素进行排序。

10. reverse( ):反转列表中的元素顺序。

11. copy( ):返回列表的浅拷贝。

12. len(list):返回列表的长度,即使用 len() 函数。

13. max(list):返回列表中最大的元素。

14. min(list):返回列表中最小的元素。

15. sum(list):返回列表中元素的总和。

以上方法都可以直接应用于列表对象。

二、元组

Python 中的元组(tuple)是一种不可变的序列类型,用于存储不可修改的数据。元组与列表(list)类似,但列表是可变的,而元组创建了,其内部的元素就不能被修改,即:不能增加、删除或更改元素。元组通常用于保证数据的完整性,确保数据在程序运行过程中不会被改变。

1.创建元组

元组通过小括号()创建,元素之间用 “,” 逗号分开,元组中的元素可以是不同的数据类型。

2.常见的4个内置函数用法

举例如下:

menu_tuple = ('hamburger', 'coke', 'French fries',
              'pineapple pipes')
# 求一个元组的长度
len1 = len(menu_tuple)
print(len1)

# 设一个数值型字符串的元组,求其中最大值和最小值的元素
price_tuple = ('23', '5', '6', '7')
max_price = max(price_tuple)
min_price = min(price_tuple)
print(max_price)
print(min_price)

# 将列表list转换成元组tuple
menu_list = ['hamburger', 'coke', 'French fries',
             'pineapple pipes']
menu_tuple = tuple(menu_list)
print(menu_tuple)

打印结果如下:

三、字典

字典可以存储不同类型的元素,元素使用大括号 { ... } 来包含,其构成由键(key)和值(value)成对组成,每个键和值用冒号分开,如下图示

接下来是关于字典的基本微操:

1.根据“键”打印出键对应的“值”

定义一个menu_dict作为字典变量

menu_dict = {'breakfast': ['milk', 'egg', 'bread'],
             'lunch': ['soup', 'stir-fried vegetable', 'rice'],
             'dinner': ['dumplings', 'noddles', 'orange juice']}
# 访问/打印 ‘键’所对应的‘值’
print(menu_dict['lunch'])

打印结果如下:

如果打印不存在的‘键’就会报错!

2.更改字典中的元素
menu_dict ={'breakfast':['milk','egg','bread'],
            'lunch': ['soup','stir-fried vegetable','rice']
            'dinner':['dumplings','noddles','orange juice']}
# 将输入的数据赋值给新的变量名weekend_breakfast
weekend_breakfast = input("请输入周末早餐:")
# 再把输入的数据 换下 原来字典'breakfast’键对应的值
menu_dict['breakfast'] = [weekend breakfast]
# 最后先输出改好的值,再输出改好后的字典
print(menu_dict['breakfast'])
print(menu_dict)

如果在修改某个键值对时,恰巧添加已存在的键,那么该键对应的值会被新的值替代

3.添加字典中的元素
menu_dict ={'breakfast': ['milk', 'egg', 'bread'],
            'lunch':['soup','stir-fried vegetable','rice'],
            'dinner':['dumplings','noddles','orange juice']}
# 输入的数据给新的变量snack
snack = input("输入饭后点心:")
# snack作为值再和字典的dessert配对
menu_dict['dessert'] = [snack]
# 下面通过for循环来对字典的"键'和'值"进行遍历
for key, value in menu_dict.items():
# print自带换行,这样每遍历一个键值对,就换行一次,结果好看^-^
print(key, value)

当使用“字典变量名[键]=值”(此处,键是字符串’dessert’,值是列表[sanck])修改字典时,如果字典中不存在这个键,那么就会在字典中新增一个键值对。

4.删除字典元素

对字典进行删除有两种方式:1.del语句  2.clear语句。

首先,del语句是删除字典中的某一个完整的键值对

可以看到 breakfast键值对 已删除:

然后,clear( ),是可以删除字典中所有的元素

menu_dict ={'breakfast': ['milk', 'egg', 'bread'],
            'lunch':['soup','stir-fried vegetable', 'rice'],
            'dinner': ['dumplings'.'noddles','orange juice']}
menu_dict.clear()
print("清空结果:"menu_dict)

5.单独打印字典中所有的键/值

keys(),可单独得到字典的键

menu_dict ={'breakfast':['milk', 'egg', 'bread'],
            'lunch': ['soup', 'stir-fried vegetable', 'rice'],
            'dinner': ['dumplings', 'noddles', 'orange juice']}
print(menu_dict.keys())

values(),可单独得到字典的值

menu_dict ={'breakfast':['milk', 'egg', 'bread'],
            'lunch': ['soup', 'stir-fried vegetable', 'rice'],
            'dinner': ['dumplings', 'noddles', 'orange juice']}
print(menu_dict.values())

6.获取字典所有元素

items(),该语句可以及时反应字典中 键值对 的变化

menu_dict ={'breakfast':['milk', 'egg','bread']}

if 'egg' in menu_dict['breakfast']:  # 如果'egg'在'breakfast'键的值里面
menu_dict['breakfast'].remove('egg')  # 单独删去egg这个值

print("剩下的所有元素:",menu_dict.items())

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值