Python 列表、元素、字典

简介: Python 列表、元素、字典

一、创建「列表」和「元组」

语法格式:

1、创建列表,使用方括号,可以包含多个元素。

[ele1, ele2, ele3, …]

2、 创建元组,使用小括号,可以包含多个元素。

(ele1, ele2, ele3, …)

案例代码:

# 创建列表
mylist = ['Python', 13.14, 520]
# 创建元组
mytuple = ('Java', 22, 33)

二、列表和元组的通用用法

2.1 通过索引使用元素

列表和元组的元素的索引值,是从 0 开始的

如果是倒数,索引值则从 -1 开始

案例代码:

# 创建元组
mytuple = ('Java', 'Python', 13.14, 520, 666, 888)
# 问题1:访问第一个元素
result = mytuple[0]
print(result)
# 问题2:访问倒数第二个元素
result2 = mytuple[-2]
print(result2)

2.2 列表和元组的切片 —— 子序列

列表和元组,可以使用索引值,获取其中一段数据。

语法格式:

[start : end : step]
start:起始位置
end:终止位置
step:间隔值,步长

案例代码:

# 创建元组
mytuple = ('Java', 'Python', 13.14, 520, 666, 888)
# 问题1:访问第一个元素到第四个元素(不包含)的所有元素
result = mytuple[0:3]
print(result)
# 问题2:访问倒数第四个元素到倒数第一个元素(不包含)的所有元素
result2 = mytuple[-4:-1]
print(result2)
# 再创建元组
mytuple2 = (1, 2, 3, 4, 5, 6, 7, 8, 9)
# 问题3:访问第二个元素到第九个元素(不包含),间隔为二的所有元素
result3 = mytuple2[1:8:2]
print(result3)
# 问题3:访问第三个元素到倒数第二个元素(不包含),间隔为二的所有元素
result4 = mytuple2[2:-2:2]
print(result4)

2.3 加法和乘法

列表和元组的「加法」

指的是,两个列表或元组所包含的元素的总和,也就是「汇总」

⚠️ 注意:

1)不能混合使用

2)元组只能跟元组相加;列表只能跟列表相加

案例代码:

# 1、创建元组
mytuple1 = ('Python', 13.14, 520)
mytuple2 = (22, 33, 66, 88)
# 2、元组相加
result = mytuple1 + mytuple2
print(result)
# 3、创建列表
mylist1 = ['Java', 1, 2, 3]
mylist2 = [4, 5, 6]
# 4、列表相加
result2 = mylist1 + mylist2
print(result2)
# 5、混合会报错
err = mytuple1 + mylist1
print(err)

列表和元组的「乘法」

把它们所包含的元素,重复 N 遍。

案例代码:

# 1、创建元组
mytuple = (22, 33)
# 2、元组乘法
print(mytuple * 3)
# 3、创建列表
mylist = [66, 88]
# 4、列表乘法
print(mylist * 4)

2.4 in 运算符

用来判断,指定元素,是否在列表或元组中。

案例代码:

# 1、创建元组
mytuple = ('Python', 13.14, 520)
# 2、包含此元素,返回 True
print('Python' in mytuple)
# 3、不包含此元素,返回 False
print('Java' in mytuple)

2.5 获取列表或元组的长度、最大值、最小值

如何获取元组或列表的「长度、最大值、最小值」?

Python 内置函数:
len() 长度
max() 最大值
min() 最小值

⚠️ 使用 max() 和 min() 时

保证元组、列表的元素,必须是类型相同的,且可以比较大小的

可以是「数值」之间的比较,也可以是「字符串」之间的比较

字符串的比较,是比较它们的 ASCII 码值

26 个大写字母的 ASCII 码为 65~90

26 个小写字母的 ASCII 码为 97~122

案例代码:

# 1、创建元组 和 列表
# mytuple = ('Python', 13.14, 520)
# mytuple2 = (22, 33, 14, -50, 520, 66)
mylist = ['Python', 'Hello', 'nice', 'happy']
# 2、获取最大值
print(max(mylist))
# 3、获取最小值
print(min(mylist))
# 4、获取长度
print(len(mylist))

2.6 序列封包和序列解包

序列封包

Sequence Packing,当把多个值只赋给一个变量时,Python 会自动将多个值封装成【元组】

序列解包

Sequence Unpacking,我们可以将列表或者元素,直接赋值给多个变量

⚠️ 注意,列表或元组的元素个数,要和变量个数一致

序列封包和解包的「高级内容」:

Python 允许给变量添加"*"号,代表一个列表,保存多个集合元素。

案例代码:

# 序列封包
abc = 10, 20, 30
print(abc)
print(type(abc))
# 序列解包
mytuple = tuple(range(1, 20, 2))
a, b, c, d, e = mytuple
print(a, b, c, d, e)
# 案例 1
# first 保存第一个元素
# second 保存第二个元素
# rest 保存剩余的其他元素
first, second, *rest = range(1, 20, 2)
print(first)
print(second)
print(rest)
# 案例 2
# first 保存第一个元素
# middle 保存中间的所有元素
# last 保存最后一个元素
first, *middle, last = range(1, 20, 2)
print(first)
print(middle)
print(last)

三、使用列表

3.1 创建列表

使用 list() 函数,创建列表。

list() 函数可以创建列表,还可以将元组、区间等对象转换成列表

案例代码:

# 1、创建元组
mytuple = ('Python', 13.14, 520)
mylist = list(mytuple)
print(mylist)
# 2、创建区间
myrange = range(1, 10)
mylist2 = list(myrange)
print(mylist2)

3.2 增加元素

增加列表元素

append():会把传入的参数,追加到列表的【最后面】;

extend():只会追加列表中的元素

insert():可以将元素插入列表的指定位置

案例代码:

# 创建列表
mylist = [1, 2, 3]
# 添加 Python 字符串
# mylist.append('Python')
# 创建元组
mytuple = (4, 5)
# 将元组添加到列表中
# mylist.append(mytuple)
# 将元组中的元素,添加到列表中
# mylist.extend(mytuple)
# 将元组添加到列表中的指定位置
mylist.insert(1, mytuple)
# 创建区间
myrange = range(7,15)
# 将区间添加到列表中
# mylist.append(myrange)
# 将区间中的元素,添加到列表中
# mylist.extend(myrange)
# 将元组添加到列表中的指定位置
mylist.insert(2, myrange)
print(mylist)

3.3 删除元素

删除列表的元素

第一种方式:del 语句;

第二种方式:remove() 并不是根据索引值来删除,它直接删除元素本身;

第三种方式:clear() 清空列表中的所有元素,比较凶残,使用的时候需要特别小心;

案例代码:

# 此处需要用到 3.2 的代码
# del mylist[2]
# del mylist[1:3]
# 删除第三个到倒数第二个,间隔为 2 的所有元素
# del mylist[2:-2:2]
# 删除元素本身
# mylist.remove(myrange)
# 大杀器:clear() 清空
mylist.clear()
print(mylist)

3.4 修改元素

修改列表的元素

列表和元组中的所有元素,其实相当于变量

你可以指定新的值,去覆盖掉原来的值

案例代码:

# 创建列表
mylist = ['Python', 13.14, 520]
# 修改列表的第一个元素
mylist[0] = 'Java'
print(mylist)
# 如果想要修改其中某段数据的话,则可以通过分片的方式来操作

3.5 其他方法

列表的其他用法:

count():用于统计列表中某个元素出现的【次数】;

index():用于判断某个元素在列表中出现的【位置】;

pop():用于将列表当成【栈】使用,实现元素出栈的功能;

reverse():用于将列表中的元素反转存放;

sort():用于对列表元素排序;

四、使用字典

4.1 创建字典

字典,就是一个键值对,key-value

就好像是做核酸,大白问你
name:xxx
age:xxx
code:green / red / yellow

创建字典:

使用 { } 来包含键值对,就可以创建字典

如果有多个键值对,需要用逗号隔开

案例代码:

# 创建字典
# 第一种方式
people1 = {'name' : 'zhangsan', 'age' : 88, 'code' : 'green'}
people2 = {'name' : 'lisi', 'age' : 58, 'code' : 'green'}
people3 = {'name' : 'laowang', 'age' : 78, 'code' : 'red'}
people4 = {'name' : 'laoli', 'age' : 68, 'code' : 'yellow'}
people5 = {'name' : 'cuihua', 'age' : 18, 'code' : 'green'}
# 买菜
# 第二种方式
vegetables = [('celery', 3.6), ('brocoli', 5.2), ('lettuce', 4.0)]
# 第三种方式
vegetables2 = [['celery', 3.6], ['brocoli', 5.2], ['lettuce', 4.0]]
# 使用 dict() 创建字典
#dict = dict(vegetables2)
# 第四种方式
dict = dict(celery = 3.6, brocoli = 5.2)
print(dict)

4.2 字典的基本用法

字典的常用方法:

  1. 通过 key 访问 value
  2. 通过 key 添加 key-value
  3. 通过 key 删除 key-value
  4. 通过 key 修改 key-value
  5. 通过 key 判断指定 key-value 是否存在

案例代码:

scores = {'语文' : 78}
# print(scores['语文'])
scores['数学'] = 60
# del scores['语文']
scores['语文'] = 55
print(scores)
print('英语' in scores)

4.3 字典的常用用法

clear():对一个字典执行该方法之后,就会被清空

get():根据 key 来获取 value

update():更新已有的字典数据

items()、keys()、values():获取字典中所有的 key-value 对,所有 key,所有的 value

4.4 使用字典格式化字符串

案例代码:

# 定义字符串模版
temple = '图书名:%(name)s,价格是:%(price)010.2f,出版社是:%(publish)s'
# 创建图书
book = {'name':'西游记', 'price':2, 'publish':'电子工业'}
book2 = {'name':'葵花宝典', 'price':1.8976536, 'publish':'武林'}
# 匹配数据
print(temple % book2)


目录
相关文章
|
1月前
|
JSON 监控 安全
深入理解 Python 的 eval() 函数与空全局字典 {}
`eval()` 函数在 Python 中能将字符串解析为代码并执行,但伴随安全风险,尤其在处理不受信任的输入时。传递空全局字典 {} 可限制其访问内置对象,但仍存隐患。建议通过限制函数和变量、使用沙箱环境、避免复杂表达式、验证输入等提高安全性。更推荐使用 `ast.literal_eval()`、自定义解析器或 JSON 解析等替代方案,以确保代码安全性和可靠性。
45 2
|
2月前
|
索引 Python
Python列表
Python列表。
55 8
|
2月前
|
C语言 Python
[oeasy]python054_python有哪些关键字_keyword_list_列表_reserved_words
本文介绍了Python的关键字列表及其使用规则。通过回顾`hello world`示例,解释了Python中的标识符命名规则,并探讨了关键字如`if`、`for`、`in`等不能作为变量名的原因。最后,通过`import keyword`和`print(keyword.kwlist)`展示了Python的所有关键字,并总结了关键字不能用作标识符的规则。
46 9
|
2月前
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
78 14
|
2月前
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
137 10
|
3月前
|
XML JSON API
如何使用Python将字典转换为XML
本文介绍了如何使用Python中的`xml.etree.ElementTree`库将字典数据结构转换为XML格式。通过定义递归函数处理字典到XML元素的转换,生成符合标准的XML文档,适用于与旧系统交互或需支持复杂文档结构的场景。示例代码展示了将一个简单字典转换为XML的具体实现过程。
31 1
|
3月前
|
数据处理 开发者 Python
Python中的列表推导式:简洁高效的数据处理
在编程世界中,效率和可读性是代码的两大支柱。Python语言以其独特的简洁性和强大的表达力,为开发者提供了众多优雅的解决方案,其中列表推导式便是一个闪耀的例子。本文将深入探讨列表推导式的使用场景、语法结构及其背后的执行逻辑,带你领略这一特性的魅力所在。
|
3月前
|
JavaScript 前端开发 算法
python中的列表生成式和生成器
欢迎来到瑞雨溪的博客,这里是一位热爱JavaScript和Vue的大一学生的天地。通过自学前端技术2年半,现正向全栈开发迈进。如果你从我的文章中受益,欢迎关注,我将持续更新高质量内容,你的支持是我前进的动力!🎉🎉🎉
52 0
|
4月前
|
存储 安全 Serverless
Python学习四:流程控制语句(if-else、while、for),高级数据类型(字符串、列表、元组、字典)的操作
这篇文章主要介绍了Python中的流程控制语句(包括if-else、while、for循环)和高级数据类型(字符串、列表、元组、字典)的操作。
68 0
|
4月前
|
存储 JSON 数据处理
分析、总结Python使用列表、元组、字典的场景
分析、总结Python使用列表、元组、字典的场景
57 0

热门文章

最新文章

推荐镜像

更多