5.字典元素的添加、修改和删除
(1)增加——直接定义键值对;如果键重复,直接覆盖;
(2)update()将新字典中所有键值对全部添加到旧字典上,如果key重复,则直接覆盖
6.字典元素中的删除
(1)del 删除的是键值对
(2)clear全部删除
(3)pop()删除制定键值对,并返回对应的“值对象”
列表是有序的,但字典是无序的
(4)popitem():随机删除和返回该键值对
5.字典元素的添加、修改和删除
(1)增加——直接定义键值对;如果键重复,直接覆盖;
(2)update()将新字典中所有键值对全部添加到旧字典上,如果key重复,则直接覆盖
6.字典元素中的删除
(1)del 删除的是键值对
(2)clear全部删除
(3)pop()删除制定键值对,并返回对应的“值对象”
列表是有序的,但字典是无序的
(4)popitem():随机删除和返回该键值对
2.字典元素的访问
(1)通过键得到值,若键不存在,则抛出异常
(2)通过get()方法来获得”值“,推荐原因,如果不存在,不会报错,而是返回none
3.列出所有的键值对、键、值
4.len()表示键值对的个数
一、字典:键值对的无序可变序列
键是任意不可变的数据:整数、浮点数、字符串、元组。 列表、字典、集合这些可变对象,不可作为“键”,且键是不重复的。
1.字典的创建
(1)通过花括号来创建
(2)通过zip()创建字典对象
(3)通过formkeys创建值为空的字典
*元组的元素访问和计数
(1)元组的元素不能修改
(2)可以进行切片操作,操作方法与列表相仿;
(3)关于排序,在元组中只能使用sorted()函数来进行——生成新的元组对象
zip语法:
zip(列表1,列表2···)将对各列表对应位置的元素组处理成压缩形式,再用list把zip表示出来
可变字符串:
当字符串修改比较频繁的时候,可以考虑用io模块
io.StringIO()
过程在pycharm里面
生成器推导式创建元组
类似于列表推导式,生成器推导用小括号,生成器生成的不是列表,也不是元组,而是一个生成器对象。生成器只能用一次。
元组总结:
(1)元组的核心特点是:不可变序列;
(2)元组的访问和处理速度比列表快;
(3)与整数和字符串一样,元组可以作为字典的键;列表则永远不可以作为字典的键来使用。
因为整数和字符串以及元组都具有不可变的特点。
1、googlol为什么是10**100?
python
大蟒蛇,解释型语言
特点:简洁
应用范围广
什么时候不能用:性能低
PYTHON3有较大的提升
不兼容2代
先学PYHTHON3
解释器:C语言解释器
单例模式
避免类方法被反复调用,同时允许反复根据类创建同地址对象。
2.元组:
列表是可变元素,可以任意修改列表中的元素。元组属于不可变序列,不能修改元组中的元素。因此,元组没有增加元素、修改元素和删除元素的方法。
元组中可以支持以下操作:
(1)索引访问;
(2)切片操作;
(3)连续操作;
(4)成员关系操作;
(5)比较运算操作;
(6)计数:元组长度、最大值、最小值、求和等
*元组的创建:
(1)通过()创建元组
(2)通过tuple()来创建元组
总结:tuple()可以接收列表、字符串、其他序列类型、迭代器等生成元组
list()可以接收元组、字符串、其他序列类型、迭代器等生成列表;
2.多维列表
(1)二位列表:列表的元素可以是列表,列表中包含列表则为多为列表;
·二位列表可以帮我们存储二位、表格的数据;
内存结构图
嵌套循环:
(9)列表排序:
1)修改源列表,不建新列表的排序
2)降序;
3)随机序列
4)建新列表的排序sorted
5)eversed()返回迭代器,用list列表的形式返回,但只能返回一次,以为指针的位置已经发生了改变。
(10)列表相关的其他内置函数汇总
max和min
sum:对于数值型列表求和,对于非数值型列表则会报错
(7)切片操作
标准格式未[起始偏移量:终止偏移量:步长]
(8)列表遍历
(4)列表元素的访问和计数
·访问
1)通过索引直接访问元素
2)index()获得指定元素在列表中首次出现的索引,这里的数字也是数字本身,打印出来的是索引值;
index(value,[start [end] ]) 数字表示从start开始的索引范围
·计数
count()获得指定元素在列表中 出现的次数
(5)列表长度
len()返回列表的长度
(6)成员资格判断
·列表元素删除
1)del删除:本质上是复制粘贴
2)pop()方法:删除并返回指定位置元素,如果未指定位置则默认操作列表的最后一个元素
3)remove()方法:删除首次出现的指定元素,若不存在该元素则抛出异常。注:这里的数字不是索引,而是数字本身;del和pop后面都是都是数字
(3)列表元素的增加和删除
·元素增加
增加和删除都改变列表内存,在这个过程中会涉及 大量的拷贝(复制、粘贴)工作,所以我们一般都在列表末尾进行改动——提高性能
1)append()方法,速度最快,这是最推荐的方法;
2)+运算符操作:创建了新的列表对象,会涉及大量的复制操作,当操作大量元素时,不建议使用
3)extend()将目标列表元素添加到本列表尾部,属于原地操作,不创建新的列表对象。整合两个列表时,推荐这种方法
4)insert()插入元素,将指定的元素插入到列表对象的任意位置,这样会让插入位置之后的元素产生移动,会影响操作速度
5)乘法扩展
(2)列表的创建:
1)基本语法[]创建;
2)list()创建,跟空列表创建时一个道理
list()可以将任何可迭代的数据转化为列表,尤其是字符串
3)通过range()创建整数列表
range()的基本语法格式为:range([start] end [step])
start参数:可选,表示期数数字,默认为0
end参数:必选,表示结尾数字;
step参数:可选,表示步长,默认为1
4)推导式
序列:
序列是一种数据存储的方式,序列结构有:字符串、列表、字典和集合
python中一切皆对象
序列就是一块用来存储多个值的连续的内存空间
对于列表[10,20,30,40]来说,a = [10,20,30,40]在内存中实际按照如下方式存储。通过变量的索引找到地址,再通过地址找到相关对象,然后读出对象的value值。
1.列表:用于储存任意数目、任意类型的数据集合;
(1)列表中常用的方法:
注:·puthon中列表的大小可变,根据需要随时可以增加或缩小;·字符串和列表都是序列类型,一个字符串是一个字符序列,一个列表是任何元素的序列
super()获得父类的代码/定义
super().父类函数()