python的组合数据类型和几种基本方法
set
集合,里面的元素是无重复,无序的,并且其中的元素是不能被修改的,使用{}
或者set()
来生成一个集合(空集合必须用set()
来生成,{}
用来生成字典)
mySet = set("helloWorld")
print(b)
#输出为:{'W', 'd', 'l', 'o', 'r', 'e', 'h'}
它无法被索引,例如mySe[0]
会报错。
常用的方法有:
#集合的操作符(交并差补)
S|T#交
S&T#并
S-T#差
S^T#补
s.add(x)
s.discard(x)#移除x,若不在s中不报错
s.remove()#同上,但是当移除的元素不在s中是就会报错
s.clear()#清空
s.pop()#随机取出一个元素
s.copy()#返回s的副本
len(s)#返回元素个数
x in s# 判断x是否在s中,是则返回True,否则False
set(x)#转化为set类型
序列
序列是有序(先后顺序)的集合,元素是可以重复的,一般是用序列的衍生类型(以下是衍生类型)其共有方法
s="HelloPython"
len(s)#返回字符串长度
min(s)#返回序列中最小的元素,前提是s中的元素可以被比较
max(s)#同上,返回最大
s.index(x)#元素x第一次出现的位置
s.index(x,i,j)#返回从i至j,元素x第一次出现的位置
s.count(x)#统计x出现的次数
列表
list,使用[]
或者list()
来生成一个列表,元素是可以被修改的。
常用方法有
ls[i]=x #赋值操作
del ls[i] #删除元素
del ls[i:j:k ]#以步长k,删除i-j的元素
ls+=lt #相接
ls*=n #重复n次,并赋值给ls
ls.append(x) #增加一个元素>>一个元素
ls.clear() #清空
ls.copy() #生成新列表并赋值给ls
ls.insert(i,x) #在i位插入x
ls.pop(i) #取出i位(并删除了i位)
ls.remove(x) #将第一个x元素删除
元组
tuple,其中的元素不可修改,用()
或者tuple()
创建
可以用[]
索引
常用方法参照上面共有的方法
字典
key->value映射。key不能重复。使用{}或者dict()生成字典类型,使用空{}生成空字典(空set不能用此生成){<key>:<value>,<>:<>}
字典的方法
del d[key] #删除key
key in d
d.keys()#返回所有key<返回·字典key·类型,可以使用for in 遍历>
d.values()#返回所有的value
d.get(k,<default>)#返回k对应value,若不存在k则添加k:<default>
d.pop(k,<default>)#取出(删除)k对应value,若不存在则返回
d.popitem()#随机返回d中一个key-value,并且用元组的形式返回
d.clear()
len(d)
创建一个空字典并向其中添加键值对
d = dict()
d[1] = 1
d[2] = 4
d[3] = 9
print(d)
output:{1: 1, 2: 4, 3: 9}
修改d中的键值对:
d[1] = 0
print(d)
output:{1: 0, 2: 4, 3: 9}