数据类型
列表
- 组成元素 中括号 和 逗号
- 列表内的元素可以是不同类型
- 列表元素可改变,字符串不可以改变
创建一个列表,只需要用逗号分隔不同的数据项,使用方括号括起来即可。列表内的数据类型可以不一样。
更新、删除列表元素
list[Number] = obj
del list[number]
del list
可以使用 加法 乘法 运算符拼接列表
- 1
- 2
- 3
- 4
- 1
- 2
- 3
列表方法
-
增加元素
append() 方法一次只能添加一个元素
,参数为具体值
extend 方法的参数为列表
-
删除元素
pop() 方法,参数为下标 index
remove() 方法,参数为元素的具体值 -
排序、清空、复制
reverse()
反向排序
sort() 排序
可以组合使用 list.sort(reverse=true)list.append(obj) 在列表末尾添加新的对象,只能添加一个
list.count(obj) 统计某个元素在列表中出现的次数
list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
list.index(obj[start,end]) 从列表中找出某个值第一个匹配项的索引位置,start 表示起始索引值、end 表示结尾索引值
list.insert(index,obj) 将对象插入列表,index索引,obj元素
list.pop(index) 移除列表中的一个元素(默认最后一个),并且返回该元素的值。index 索引号 可选参数。
list.remove(obj) 移除列表中某个值的第一个匹配项
list.reverse() 反向列表中的元素并保存
list.sort([func,key,reverse]) 对原列表进行排序并保存,list.sort(reverse=true)
list.clear() 清空列表
list.copy() 复制列表
-
列表分片 slice
- 1
- 2
- 3
- 4
- 5
赋值和分片复制的区别
- 1
- 2
- 3
- 4
列表遍历
元素的索引值和对应值可以使用 enumerate() 同事得到
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
按顺序遍历序列,使用 sorted 返回一个已排序的序列,不修改原值
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
列表常用操作符
比较操作符
- 1
- 2
- 3
- 4
- 5
逻辑操作符
- 1
- 2
- 3
连接操作符
- 1
- 2
- 3
- 4
元组 tuple
- 关键成分小括号(可以没有),逗号(关键)
- 元组与列表类似,可以使用索引访问
- 不同之处在于
元组内的元素不可改变!!!列表内的元素可以任意修改。
- 单个元素的元组,
逗号必不可少
元组方法
元组只有 count 和 index 两个方法
- 1
- 2
利用 split 更新删除元组的元素
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
元组运算符
下列运算符同样适用于列表
Python 表达式 | 结果 | 描述 |
---|---|---|
len((1, 2, 3)) | 3 | 长度 |
(1, 2, 3 + (4, 5, 6) | (1, 2, 3, 4, 5, 6) | 组合 |
(‘Hi!’) * 4 | (‘Hi!’, ‘Hi!’, ‘Hi!’, ‘Hi!’) | 重复 |
3 in (1, 2, 3) | True | 元素是否存在于列表中 |
for x in [1, 2, 3]: print(x, end=” “) | 1 2 3 | 迭代 |
- 1
- 2
字典
- 字典可存储任意类型
- 字典是 python 中唯一的映射类型。没有顺序概念,一个键对应一个值。字典不是序列类型,是映射类型
- 关键字可以是任意不可变类型,通常为字符串或数值
- 键 key 值 value 对用冒号隔开,不同的对用逗号分隔,整个字典用花括号。
可以理解为无序的键值对的集合
- 1
- 键 可以是字符串、数字或元组,且
必须不可变
,键不可以是列表 同一个字典内不允许一个键出现两次
,如果出现两次,前面的失效,后面的有效。- 值 可以是任何数据类型,没有限制,可以是标准的对象、也可是是自定义的。
更新、删除、添加字典内元素
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
dict() 函数直接构造字典
可以推导有固定模式的列表、字符串或元组到字典。
- 1
- 2
- 3
- 1
- 2
字典推导还可以用来创建任意键值对的表达式字典
- 1
- 2
字典常用方法
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
get 方法寻找的 key 如果不存在,不会保存,会返回一个空值
pop() 方法会直接删除给定的键值对,popiterm() 方法会随机删除一个键值对
重点方法 =大师兄python
- dict.fromkeys(seq[, value]))
以 seq 中的元素做字典的键 key,value 做字典中的值 value
seq 字典中 键值 的列表
value 可选参数,设置键序列 seq 的值,value 值只能有一个
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 1
- 2
- 3
- 4
- 5
- 6
- 7
结果
新的字典为 : {‘age’: None, ‘name’: None, ‘sex’: None}
新的字典为 : {‘age’: 10, ‘name’: 10, ‘sex’: 10}
- dict.update(dict2)
把 dict2 里面的键值对添加到 dict1 里面
- 1
- 2
- 3
- 4
- 5
字典遍历
参考字典方法 iterms(),关键字和对应的值,可以使用 iterms() 方法同事解读出来。