Python初学之容器

  1. 数据结构[容器]

  List(列表) ,tuple(元组),dict(字典),set(集合)就是用来存放大量数据,而且这些都是开辟在堆里面的。

  1. 列表list

  2.1列表是一直线性表,有大量的节点组成,每一个节点都可以存储数据,所以列表可以存储大量的数据。

语法:a = list()  创建了一个空列表

     a = list([1,2,3])创建了一个列表,并且赋值1,2,3

     a = [1,2,3]同时也可以利用弱数据类型语言的特点来创建列表

  2.2python中如何使用列表,定义列表

 通过下标来判断这个元素,都是从0开始的,而且定义多少个,就输出多少个,千万不可越界,不然会出错。

语法: 列表[下标] = 新值

2.3遍历元素

   for 变量 in 容器:

变量代码容器中的一个确定的元素


2.4如何判断列表的长度
len全局函数可以判断列表的长度

使用while循环遍历
index = 0
while index < len(a):
         print(a[index])
         index += 

 

 

2.5列表的常用方法

'append', 'clear','copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort'

append    #在列表末尾添加一个元素

 

clear # 清除列表中的所有元素

 

copy # 复制列表(浅拷贝list)一定分别出拷贝和引用传递

 

count 统计元素在列表中的个数

 

index 查询元素在列表中第一次出现的下标位置,注意:

如果列表中不存在该元素,则抛出异常

 

insert 制定要插入的元素的位置

 

pop 通过下标移除元素,注意:默认没有下标时删除最后一个

 

remove 移除对应的元素,,注意:如果列表中不存在该元素,则抛出异常

 

reverse 翻转元素的顺序

 

sort 排序(主要针对数字)

 

extend 合并列表

  1. 集合(set)

set()全局函数

注意:如果没有初始化的值,不要直接使用{}反向定义,默认字典类型

特点:元素唯一,不允许重复,无序的

 

3.1  set的常用方法

'add', 添加

'clear', 清除

'copy', 拷贝

'difference', 差集,前面差集后面,输出前面的

 

'discard', # 移除元素,如果存在,不存在也不报错

'intersection', 交集

'pop', # 随机移除,一般不用

 

'remove', # 移除元素,不存在会报错

'union', 并集

 

在Python,{}不一定就是set,也有可能是字典

  1. 元组(tuple)

不可变类型,一旦写定输入不可变,可以重合。

表示的固定,不变的值。

t1 = tuple((1,3,45,5))

元组也是通过下标访问的。

元组是不可变类型

常用方法:

count

index

注意:元组是不可变类型,意味着当元组中的值定义好之后,再无法修改,

但是注意,如果元组的元素是可变类型,那么该元组是可变的!!

注意2:

在定义元组时,如果只有一个元素,那么一定要在该元素后面加个逗号,

否则Python解释器会将该元组当成一个数字对待(圆括号就数学上的含义)

 

5.字典(dict)

Python中的字典类型,key必须是字符串!!!

定义:{"name": "xxx", "age": 17}

dict()

dict({"name": "xxx", "age": 17})

 

访问元素

d[key]

d[key] = 新值 # 如果key不存在,则新增这个键值对

常见的方法:

 'clear',

 'copy',

 'fromkeys',

 'get', # 通过key或者该key对应的值,如果没有这个key,则返回None

 'items', # 成对返回键值对

 'keys', # 返回所有的key

'pop', # 通过key,删除对应的键值对,注意:如果该键不存在,则抛出异常

'popitem', # 移除一个键值对,按照LIFO规则

'values' # 返回所有的值

 

 

字典的迭代:

第一种方式:

for k in d2:

print(k, d2[k])

 

第二种方式:

for key in d2.keys():

print(k, d2[k])

第三种方式:

for k,v in d2.items():

print(k, v)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凭栏而望归云处

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值