python基础使用之数据结构(列表,字典,序列)

Python中有许多内置的数据结构,其中包括列表、字典和序列。这些数据结构为存储和组织数据提供了便利。

1. 列表(List)

列表是一种有序的、可变的数据结构,用于存储多个元素。它包含一组任意类型的值,按照一定顺序组合而成的。组成列表的值叫做组员。每个元素被标识一个索引,索引从0开始。

1.1 创建列表

numbers = [1, 2, 3, 4, 5]

fruits = ['apple', 'orange', 'banana']

mixed_list = [1, 'hello', 3.14, True]

1.2 访问列表元素

first_element = numbers[0] # 获取列表中的第一个元素

last_element = numbers[-1] # 获取列表中的最后一个元素

1.3 列表切片

subset = numbers[1:4] # 获取索引1到3的子列表,结果为 [2, 3, 4]

1.4 range使用

range用来返回一个整数列表,例如

range(1,5)##[1,2,3,4]

1.5 列表操作

A=[10,11,12,13] #元素为整数

B=["red","blue","green"] #元素为字符串

C=[] #定义空列表

E=A+B #两个列表相加

操作

>>> number = [0,1,2,3] ;number2=["a","b"] #定义列表

>>>number[1:3] #某一部分元素

>>>len(number) #统计列表长度

>>> x = number[0] #赋值第一个元素

>>> number[0] = 68 #修改元素值

>>>number.append(4) #追加元素

>>>number.insert(3,5) #插入元素 insert(索引位置,插入元素值)

>>>number.extend(number2) #合并number & number 列

>>>number.pop(0) #删除第一个值

>>>del number[1] #删除元素

2. 字典(Dictionary)

字典是一种键值对存储的数据结构,用于存储具有唯一键的元素。使用键来访问值,而不是像列表一样使用索引。键必须是不可变的数据类型,通常是字符串或数字。字典是无序的,即元素的顺序不影响访问。

2.1 创建字典

person = {'name': 'Alice', 'age': 30, 'city': 'Wonderland'}

2.2 访问字典元素

name = person['name'] # 获取键为'name'的值

age = person.get('age') # 使用get方法获取键为'age'的值

2.3 字典操作

person['occupation'] = 'Engineer' # 添加新的键值对

person.pop('city') # 移除指定键的键值对

a = { } # 定义空字典

b = { 'x': 3, 'y': 4 }

c = { 'uid': 105,

'login': 'beazley',

'name' : 'David Beazley'

}

操作

>>>u = c['uid'] # 根据索引读取元素值

>>>c['shell'] = "/bin/sh" # 重定义

>>>Copy = c.copy() #拷贝

>>>len(c) #字典元素量

>>>c.clean() #清空字典

3. 序列(Sequence)

序列是一种包含有序元素的数据结构,包括字符串、列表和元组。它与list类似,最大的不同序列是一种只读且不可变更的数据结构;不可取代序列中的任意一个元素,因为它是只读不可变更。序列可以包含不同类型的元素,具体取决于是字符串、列表还是元组。

3.1 创建序列

f = (2,3,4,5) #整数序列

g = (,) # 空序列

h = (2, [3,4], (10,11,12)) # 多维列表

3.3 序列操作

x = f[1] # 将f[1]的元素值赋值x = 3

y = f[1:3] # 获得索引为1,2的元素

z = h[1][1] # 二维数组看待 z = 4

相关推荐
qq_413847401 小时前
HTML怎么限制输入字符数_HTML input maxlength属性用法【详解】
jvm·数据库·python
自我意识的多元宇宙7 小时前
树与二叉树--二叉树的存储结构
数据结构
u0109147608 小时前
CSS组件库如何快速扩展_通过Sass @extend继承基础布局
jvm·数据库·python
baidu_340998828 小时前
Golang怎么用go-noescape优化性能_Golang如何使用编译器指令控制逃逸分析行为【进阶】
jvm·数据库·python
m0_678485458 小时前
如何利用虚拟 DOM 实现无痕刷新?基于 VNode 对比的状态保持技巧
jvm·数据库·python
不吃香菜学java8 小时前
Redis的java客户端
java·开发语言·spring boot·redis·缓存
qq_342295828 小时前
CSS如何实现透明背景效果_通过RGBA色彩模式控制透明度
jvm·数据库·python
TechWayfarer8 小时前
知乎/微博的IP属地显示为什么偶尔错误?用IP归属地查询平台自检工具3步验证
网络·python·网络协议·tcp/ip·网络安全
Greyson18 小时前
CSS如何处理超长文本换行问题_结合word-wrap属性
jvm·数据库·python
justjinji8 小时前
如何批量更新SQL数据表_使用UPDATE JOIN语法提升效率
jvm·数据库·python