Python-集合、序列、字典的分析

                             Python-集合、序列、字典的分析

1.集合

集合元素不可更改,不能是可变数据类型

集合是多个元素的无序组合,{ },建立可用{}或者set(),建立空集合,必须使用set()

集合见操作:交&、并|、补^、差- 属于、不属于(<=、<、>=、>)

判断元素是否在集合中;数据去重

A = {"py", 123, ("py", 123)}  # {"py", 123, ("py", 123)}#
B = set("pypy123")  # {'p', '2', 'y', '3', '1'}
C = {"py", 123, "py", 123}  # {123, 'py'}
print(A | B)
print(A - B)
print(A & B)
print(A ^ B)
A ^= B
print(A)
print(A >= B)

#output
{'2', '3', 'p', ('py', 123), 'py', 'y', '1', 123}
{123, 'py', ('py', 123)}
set()
{('py', 123), 'py', 'y', '2', '1', '3', 'p', 123}
{('py', 123), 'py', 'y', '2', '1', '3', 'p', 123}
True

在了解了基础之后,这里列举了一些其他的函数::

#  S.add(x)增加x到S中
#  S.discard(x)移除x
#  S.remove(x)移除x,若没有x则报错KeyError
#  S.clear()移除所以元素
#  S.pop()随机返回一个元素,并更新S,若S为空则报错KeyError
#  S.copy返回一个S
#  len(S)返回S中元素的个数
#  x in S判断x是否在S中
#  x not in S判断x是否不在S中
#  set(x)将x转变为集合

2.序列

序列是具有先后关系的一组元素

 是一维元素向量,元素类型可以不同,用序号引导(0开始) 

序列是一个基类类型,包括字符串类型、元组类型、列表类型

 序号包括正向递增序号和反向递减序号 # 数据表示-》元素遍历----主要用处

元组类型---数据保护

# x in S判断x是否在S中
# x not S判断x是否不在S中
# s + t连接两个序列s和t
# s * n 或 n * s将序列s复制n次
# s[j]索引
# s[i:j] 或 s[i: j: k]切片(k步长)
# len(S)返回S中元素的个数
# min(S)/max(S)返回序列S中最小(大)元素,需要可比较
# S.index(x)/S.index(x,i,j)返回序列S从i到j位置中第一次出现x的位置
# S.count(x)统计x出现的次数

*元组::

元组一旦被创建就不能被修改

 用()或者tuple()创建

接下来先看一些元组的例子::

create = "cat", "dog", "tiger"
print(create)
print(create[::-1])
color = (0x001100, create)
print(color)
print(color[-1][2][0])

#output

('cat', 'dog', 'tiger')
('tiger', 'dog', 'cat')
(4352, ('cat', 'dog', 'tiger'))
t

*列表::

列表创建后可以别随意修改

使用[]或者list()创建

接下来先看一些列表的例子::

lr = ["cat", "dog", "tiger", 1024]
lt = lr  # 单纯=表示引用
lt[0] = "python"  # lt[i:j:k]=lt
print(lr)
# del ls[i]/del ls[i:j:k]删除
# ls += lt将lt增加到ls中去
# ls *= n将ls重复n次
lr[1:2] = [1, 2, 3, 4]
print(lr)
del lr[::3]
print(lr)
print(lr * 2)
print(lr)

#output

['python', 'dog', 'tiger', 1024]
['python', 1, 2, 3, 4, 'tiger', 1024]
[1, 2, 4, 'tiger']
[1, 2, 4, 'tiger', 1, 2, 4, 'tiger']
[1, 2, 4, 'tiger']

在了解了基础之后,这里列举了一些其他的函数::

# ls.append(x)再最后增加一个元素
# ls.clear()删除所以元素
# ls.copy()返回一个S
# ls.insert(i, x)在第i个位置插入一个x
# ls.pop(i)将第i个位置的元素取出并删除
# ls.remove(x)删除第一个出现的x
# ls.reverse()元素反转
lr.append(123)
print(lr)
lr.insert(3, "human")
print(lr)
lr.reverse()
print(lr)

#output

[1, 2, 4, 'tiger', 123]
[1, 2, 4, 'human', 'tiger', 123]
[123, 'tiger', 'human', 4, 2, 1]

3.字典

字典是键值对的集合,键值对之间无序

采用大括号{}和dict()创建,键值对用冒号:表示

 键<>:<>值

接下来先看一些列表的例子::

# del d[k]删除
# k in d 判断是否存在
# d.keys()返回字典d中所有的键信息
# d.values()返回字典d中所有的值信息
# d.items()返回字典d中所有的键值对信息
d = {"中国": "北京", "美国": "华盛顿", "法国": "巴黎"}
print("中国" in d)
print(d.keys())  # 可遍历
print(d.values())

#output

True
dict_keys(['中国', '美国', '法国'])
dict_values(['北京', '华盛顿', '巴黎'])

在了解了基础之后,这里列举了一些其他的函数::

# d.get(k, <default>)键k存在,则返回相应值,不存在则返回<default>值
# d.pop(k, <default>)键k存在,则取出相应值,不存在则返回<default>值
# d.popitem()随机取出一个键值对,以元组形式返回
# d.clear()删除所有元素
# len(d)返回d中元素的个数
# d["2"] = 2新增元素  d[key]

猜你喜欢

转载自blog.csdn.net/jly164260234/article/details/83216539