容器类型数据
能够容纳基本数据的数据类型:
- 序列
- 列表
- 元组
- 集合
- 字典
序列
序列中的元素是有序的,编号从0开始,支持负值索引。
a="hello"
a[0] # 'h'
# 加和乘操作
"hello" * 2 # "hellohello"
"hello" + "world" # helloworld
# 切片操作
# [start:end:step]
b="hello"
b[0:4:2] # 'hl'
# 成员测试 判断是否存在某元素
# in 、 not in
a="hello"
'e' in a # True
'x' not in a # True
列表
列表是一种可变序列类型,我们可以追加、插入、删除和替换列表中的元素。
# 创建列表
# list()函数
list('hello') # ['h', 'e', 'l', 'l', 'o']
# [元素1,元素2...]
[10,20]
# 追加元素
# append 方法 单个元素
a=[]
a.append('x') # a=['x']
# + 、 extend 多个元素
a + list('bcd') # a=['x','b','c','d']
a.extend('bcd') # a=['x','b','c','d']
# 插入元素
list.insert(i,x)方法
在第i个位置插入x元素
# 替换元素
通过下标进行赋值
a[5]='x'
# 删除元素
list.remove(x)方法
从list中移除第一个值为x的元素
元组
元组是一种不可变序列类型。
# 创建元组
#tuple()函数 (元素1,元素2...)
tuple([1,2,3,4])
(1,2,3,4)
# 元组拆包
nid,name = (101,'小猪')
集合
集合是一种可迭代的、无序的、不能包含重复元素的容器类型的数据。
# 创建集合
# set函数
set('hello') # {'o', 'e', 'h', 'l'}
{'o', 'e', 'h', 'l'}
# 修改集合
add(x) 若元素已存在并不抛出错误
remove(x) 若元素不存在则抛出错误
clear() 清空集合
字典
字典是可迭代的、通过键来访问元素的可变的容器类型。
# 创建字典
# dict()函数
# {key1:value1,key2:value2}
# 修改字典
# 访问字典视图
# items() 返回字典中所有的键值对视图
# keys() 返回字典键视图
# values() 返回字典值视图
example = dict({'name':'小猪','age':18})
list(example.items()) # [('name', '小猪'), ('age', 18)]
list(example.keys()) # ['name', 'age']
list(example.values()) # ['小猪', 18]
字符串
字符串是序列的一种。
- 普通字符串
单引号或双引号括起来。
- 原始字符串
r”xxxxxxx”
遇到\不转义。
- 长字符串
有换行等。
使用三重单引号或双引号。
s="""
今天,
有亿点点,
想你。
"""
字符串转换为数字
# 转换失败会触发异常。
int()
float()
数字转换为字符串
str()
格式化字符串
format()
'i * i ={}'.format(i*i)
'{0} * {0} = {1}'.format(i,i*i)
'{p1} * {p1} = {p2}'.format(p1=i,p2=i*i)
格式化控制符
{序号:控制符}
操作字符串
str.find(字串,开始位置,结束位置)
找不到返回-1str.replace(原来的字符串,新的字符串,替换的次数)
str.split(分隔符,[分割次数])
返回一个列表