Python数据类型基本应用
元组与列表
序列类型常用操作
操作符 | 描述 |
---|---|
x in s | 如果x是s的元素,返回True,否则返回False |
x not in s | 如果x不是s的元素,返回True,否则返回False |
s + t | 链接s和t |
s * n 或 n * s | 将序列s复制n次 |
s[i] | 索引,返回序列第i个元素 |
s[i: j] | 分片,返回包含序列s第i到j个元素的子序列(不包含第j个元素) |
s[i :j : k] | 步骤分片,返回包含序列s第i到j个元素以k为步数的子序列 |
len(s) | 序列s的元素个数(长度) |
min(s) | 序列s中的最小元素 |
max(s) | 序列s中的最大元素 |
s.index(x[,i[,j]]) | 序列s中从i开始到j位置中第一次出现元素x的位置 |
s.count(x) | 序列s中出现x的总次数 |
元组
元组( tuple )是序列类型中比较特殊的类型,因为它一旦创建就不能被修改。元组类型在表达固定数据项、函数多返回值、多变量同步赋值、循环遍历等情况下十分有用。Python中元组采用逗号和圆括号(可选)来表示。
>>>creature = "cat", "dog", "tiger", "human"
>>>creature
('cat', 'dog', 'tiger', 'human')
>>>color = ("red", 0x001100, "blue", creature)
>>>color
('red', 4352, 'blue', ('cat', 'dog', "tiger', 'hman'))
>>>co1or[2]
'blue'
>>>co1or[-1][2]
'tiger'
列表方法
方法 | 说明 |
---|---|
list.append(x) | 将元素x添加至列表尾部 |
list.extend(L) | 将列表L中所有元素添加至列表尾部 |
list.insert(index, x) | 在列表指定位置index处添加元素 |
xlist.remove(x) | 在列表中删除首次出现的制定元素 |
list.pop(lindex]) | 删除并返回列表对象指定位置的元素 |
list.clear( ) | 删除列表中所有元素,但保留列表对象l |
ist.index(x) | 返回值为x的首个元素的下标 |
list.count(x) | 返 回指定元素x在列表中的出现次数list.rev |
list.reverse() | 对列表元素进行原地倒叙 |
list.sort() | 对列表元素进行原地排序(升序、降序) |
list.copy() | 返回列表对象的浅拷贝 |
集合与字典
集合
①集合数据类型是没有顺序的简单对象的聚集,且集合中
元素不重复
②Python集合数据类型包括可变集合对象(set) 和不可
变集合对象(frozenset)
③集合的定义{x,2-x.-.-,xn}
④{}表示空的dict, 因为dict也使用花括号定义。空集为
set()
⑤集合中元素不可重复,元素类型只能是固定数据类型,例如:整数、浮点数、字符串、元组等,列表、字典和集合类型本身都是可变数据类型,不能作为集合的元素出现
[例]创建集合对象示例
>>> {
1,2,1}
{
1. 2}
>>> {
1,'a,'True}
{
True, 'a'}
>>>{
1.2, True}
{
True, 1.2}
>>>set()
set()
>>> {
'a',[1,2]}
Traceback (most recent call last):+
File "<pyshell#13>", line 1, in<module>4
{
'a',[1,2]}
TxpsEroc yahashable type: 'list'
由于集合元素是无序的,集合的打印效果与定义顺序可以不一致。由于集合元素独一无二,使用集合类型可以过滤掉重复元素。
集合类型有10个操作符
操作符 | 描述 |
---|---|
S-T或S.difference(T) | 返回一个新集合,包括在集合S中但不在集合T中的元素 |
S-=T或S.difference_ update(T) | 更新集合S包括在集合S中但不在集合T中的元素 |
S & T或S .intersection(T) | 返回一个新集合,包括同时在集合S和T中的元素 |
S&=T或S.intersection_update(T) | 更新集合S,包括同时在集合S和T中的元素 |
S^T或s.symmetric_ difference(T) | 返回一个新集合,包括集合S和T中元素,但不包括同时在其中的元素 |
S^= T或s.symmetric_ difference update(T) | 更新集合S,包括集合S和T中元素,但不包括同时在其中的元素 |
S\T或S.union(T) |