python-数据类型总结(集合,元组,列表,字典)

目录

一 集合

1.集合创建

2.集合操作符

3.集合操作

4.集合作用

1.包含关系比较

2.数据去重

二 序列

1.元组

2.列表 

1.操作

 2.函数

三 字典

 1.函数操作


一 集合

 

1.集合创建

1.集合中元素无序,每个元素唯一,不存在相同元素。

2.集合用大括号{}表示,元素间用逗号分隔。

3.建立集合类型用 {} 或 set() ,而建立空集合类型,必须使用 set() 。(因为使用变量名 = {}这种形式生成的是字典

示例:

A = {"python",1111,("python",1111)}
B = set("python python")
C = {"python","python",111,111}
print(A)
print(B)
print(C)

2.集合操作符

1. S | T :返回一个新集合,包括在集合S和T中的所有元素
2. S - T :返回一个新集合,包括在集合S但不在T中的元素
3. S & T:返回一个新集合,包括同时在集合S和T中的元素
4. S ^ T:返回一个新集合,包括集合S和T中的非相同元素

5. S<=T 或 S<T : 返回True/False,判断S和T的子集关系

6. S>=T 或 S>T : 返回True/False,判断S和T的包含关系

3.集合操作

1. S.add(x) :如果x不在集合S中,将x增加到S
2. S.discard(x):移除S中元素x,如果x不在集合S中,不报错
3. S.remove(x):移除S中元素x,如果x不在集合S中,产生KeyError异常
4. S.copy():返回集合S的一个副本
5. len(S):返回集合S的元素个数
6. x in s:判断S中元素x,x在集合S中,返回True,否则返回False
7. x not in s:判断S中元素x,x不在集合S中,返回True,否则返回False
8. S.clear() :移除S中所有元素
9. S.pop() :随机返回S的一个元素,更新S,若S为空则产生KeyError异常
10. set(x) :将其他类型变量x转变为集合类型

示例:

A = {'p','py',"python",1234}
for i in A:
    print(i)

try:
    while True:
        print(A.pop(),end = " ")
except:
    pass

print(A)

4.集合作用

1.包含关系比较

2.数据去重

示例:

#数据去重
ls = ["py","p","p",123]
s= set(ls) #集合类型
print("s:",s)
ls = list(s) #将集合转换为列表
print("ls:",ls)

二 序列

序列包括字符串,列表,元组。

序列有关操作:

x in s :如果x是序列s的元素,返回True,否则返回False
x not in s :如果x是序列s的元素,返回False,否则返回True
s + t :连接两个序列s和t
s*n或n*s :将序列s复制n次
s[i] :索引,返回s中的第i个元素,i是序列的序号
s[i:j]或s[i: j: k] :切片,返回序列s中第i到j以k为步长的元素子序列
len(s) :返回序列s的长度
min(s) :返回序列s的最小元素,s中元素需要可比较
max(s) :返回序列s的最大元素,s中元素需要可比较
s.index(x)或s.index(x, i, j) :返回序列s从i开始到j位置中第一次出现元素x的位置
s.count(x) :返回序列s中出现x的总次数

1.元组

1.元组是一种序列类型,一旦创建就不能被修改。

2.使用小括号()或tuple()创建,元素间用逗号,分隔

3.小括号可以不适用

示例:

yuanzu = "a","b","c"
yuanzu2 = (111,'aaaa',yuanzu)
yuanzu3 = yuanzu[::-1]
yuanzu4 = yuanzu2[::-1]
print(yuanzu)
print(yuanzu2)
print(yuanzu2[-1][2])
print(yuanzu3)
print(yuanzu4)

2.列表 

定义列表时只有当使用了"[ ]"或者list()时,才会真正创建一个列表,如果只是简单地赋值,如list1=list2那么只是赋给了一个新的名字,相当于重新命名。

1.列表是一种序列类型,创建后可以随意被修改

2.使用方括号[ ]或list() 创建,元素间用逗号分隔

3.列表中各元素类型可以不同,无长度限制

1.操作

ls[i]= x :替换列表ls第i元素为x
ls[i: j:k] = lt :用列表lt替换ls切片后所对应元素子列表
del ls[i] :删除列表ls中第i元素
del ls[i:j: k] :删除列表ls中第i到第j以k为步长的元素
ls += It :更新列表ls,将列表lt元素增加到列表ls中
ls *= n :更新列表ls,其元素重复n次

 2.函数

ls.append(x) :在列表ls最后增加一个元素x
ls.clear() :删除列表ls中所有元素
ls.copy() :生成一个新列表,赋值ls中所有元素
ls.insert(i,x) :在列表ls的第i位置增加元素x
ls.pop(i) :将列表ls中第i位置元素取出并删除该元素
ls.remove(x) :将列表ls中出现的第一个元素x删除
ls.reverse() :将列表ls中的元素反转

sorted(ls) : 排序

示例:

ls = [1,2,3,"abc"]
ls[1:2] = [5,6,7]
print(ls)
del ls[::3]
print(ls)
print(ls*2)

列表具体操作示例

1. 判断lt中是否包含数字0                  >>> 0 in lt
2. 向lt新增数字0                                 >>> lt.append(0)
3. 返回数字0所在lt中的索引               >>>lt.index(0)
4.lt的长度                                           >>> len(lt)
5. lt中最大元素                                   >>> max(lt)
6. 清空lt                                              >>> lt.clear()

7. 定义空列表lt                                   >>> lt = []
8. 向lt新增5个元素                             >>> lt += [1,2,3,4,5]
9. 修改lt中第2个元素                         >>>lt[2] = 6
10. 向lt中第2个位置增加一个元素     >>> lt.insert(2,7)
11. 从lt中第1个位置删除一个元素      >>> del lt[1]
12. 删除lt中第1-3位置元素                >>> del lt[1:4]

三 字典

1.字典类型是”映射“的体现

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

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

示例:

d = {"China":"Beijing","America":"Huashengdun"}
print(d)
print(d["China"])

#创建空字典
de = {};print(type(de))   #type(x)返回变量x的类型

 1.函数操作

del d[k] :删除字典d中键k对应的数据值
k in d :判断键k是否在字典d中,如果在返回True,否则False
d.keys() :返回字典d中所有的键信息
d.values() : 返回字典d中所有的值信息
d.items() :返回字典d中所有的键值对信息
d.get(k,<default>) :键k存在,则返回相应值,不在则返回<default>值
d.pop(k,<default>) :键k存在,则取出相应值,不在则返回<default>值
d.popitem() :随机从字典d中取出一个键值对,以元组形式返回
d.clear() :删除所有的键值对
len(d) :返回字典d中元素的个数

示例:

定义空字典d                          >>> d = {}

向d新增2个键值对元素         >>> d["a"] = 1; d["b"] = 2

修改第2个元素                     >>> d["b"] = 3

判断字符'c'是否是d的键       >>>"c" in d

计算d的长度                         >>>len(d)

清空d                                   >>>d.clear()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值