学习Python第六周-----集合类型、序列类型和字典类型的操作

本文详细介绍了Python中的集合、序列(包括字符串、元组和列表)和字典类型。集合是无序且不包含重复元素的数据结构,提供了添加、删除元素等操作。序列类型如字符串、元组和列表支持索引、切片、连接、查找、计数等操作。列表是可变的序列,允许直接修改元素。字典是键值对的映射,提供通过键获取值、添加和删除键值对的功能。此外,还展示了这些数据类型的实例和常用方法。
摘要由CSDN通过智能技术生成

1. 集合类型
类型建立:set()或者{} -----(注意!建立空集合类型,必须使用set() )

>>>print(set("pypython123"))
结果1{'t', '3', 'y', '2', '1', 'n', 'o', 'p', 'h'}

>>>print({"python",123,("python",123)})
结果2{"python",123,("python",123)}

>>>print({"python",123,"python",123})
结果3{'python', 123}

从结果1、3我们可以得出一个结论:集合类型时无序类型,输出结果不是有序结果。集合类型能够消除重复的元素。
在这里插入图片描述
集合的处理方法:

  • S.add(x) -----如果x不在集合S中,将x添加到S

  • S.discard(x) -----移除S中元素x,如果x不在S中不报错

  • S.remove(x) -----移除S中元素x,如果x不在S中,产生KeyError异常 小技巧:借助这一异常我们可以使用 (try: except:)结构

  • S.clear(x) -----移除S中所有元素

  • S.pop(x) -----随机返回S的一个元素,更新S,若S为空产生KeyError异常

  • S.copy()-----返回集合S的一个副本

  • len(S)-----返回集合S的元素个数

  • x in S -----判断S的元素x,x在集合S中,返回True,否则False

  • x not in S -----判断S的元素x,x不在集合S中,返回True,否则False

  • set(x) -----将其他类型变量x转换为集合类型

    >>> a = ['a','a','b','b','c','c'] # a 为列表,利用集合的去重性 	
    print(set(a)) 
    结果:{'c', 'b', 'a'} 
    

2. 序列类型
序列类型包括:字符串类型、元组类型、列表类型

  • x in s -----如果x是序列s的元素,返回True,否则false
  • x not in s -----如果x不是序列s的元素,返回True,否则false
  • s + t -----链接两个序列s 和 t
  • s[i] -----索引,返回s中的第i个元素
  • s[i:j]或s[i:j:k] -----切片,返回序列s中第i到j(不包含j)以k为步长的元素子序列
>>> ls = ["python",123,".io"]
	print(ls[::-1})
结果:['.io', 123, 'python']
>>> ls = [""python123.io"]
	print(ls[::-1]) # 逆序输出
结果:oi.321nohtyp
  • 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 的总次数

元组类型:
元组类型是一种序列类型,一旦创建就不能更改
类型建立小括号()或tuple()

>>>	cl = "cat","dog","duck","pig"
	print(("green",125,cl))
结果:('green', 125, ('cat', 'dog', 'duck', 'pig'))
	a = ("asd",123,cl)
	print(a[-1][2])
结果:duck

列表类型:
列表类型是一种序列类型,创建后可以任意更改
类型建立[] 或list(),元素间用逗号分隔

  • 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(不包含j)以k为步长的元素
  • ls += lt -----更新列表ls,将列表lt元素添加到列表ls中
  • ls *= n -----更新列表,其元素重复n次
  • ls.append(x) -----在列表ls最后添加一个元素x
  • ls.insert(i,x) -----在列表ls的第i位置添加元素x
  • ls.reverse() -----将列表ls中的元素反转

3. 字典类型
类似于数学上的映射。
映射一一种键(索引)和值(数据)的对应
类型建立采用大括号{}和dict()创建,简直对用冒号’ : '表示

<字典变量> = {<1>:<1>,<2>:<2>,<3>:<3>...} 	#通过键获取值
>>> a = {"班长":"李三","学委":"张四","团委":"小红"}
	print(a["学委"])
结果:张四

<值> = <字典变量> [<键>]
<字典变量>[<键>] = <值>

>>> a["体育委"] = 小明 	#向a中添加一个键值对元素
>>> a["班长"] = 小李 	#修改键"班长"的值
  • del d[k] -----删除字典d中键k对应的数据值
  • k in d -----判断键k是否在字典中,如果在返回True,否则False
  • d.keys() -----返回字典中所有的键信息
  • d.values()-----返回字典d中所有值的信息
  • d.items()-----返回字典中所有的键值对信息
    (利用映射我们可以统计数据的出现次数,数据是键,次数是值)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值