Python基本数据类型——tuple, set

tuple

  1. 创建

    tuple创建当个元素时,需要注意元素后面加逗号

    # 1. 用小括号创建
    a = ()
    print(type(a))  # <class 'tuple'>
    # 1-1 单个元素的tuple需要加上逗号
    a = (100)
    print(type(a)) # <class 'int'>
    b = (100, )
    print(type(b)) # <class 'tuple'>
    
    # 2. 用逗号创建
    a = 100,
    print(type(a)) # <class 'tuple'>
    b = 11, 12, 13  # 最后一个元素后面可以加逗号,也可以不加逗号
    print(tpye(b)) # <class 'tuple'>
    
    # 3. 用tuple定义
    a = tuple()
    print(a) # ()
    a = [1, 2, 'love']
    b = tuple(a) # 要求tuple的参数必须可迭代
    print(b)  # (1, 2, 'love')
    
  2. 下标

    注意: a[-1::-1] 表示从-1即倒数第一个元素开始,直到…,其中第二个:-1表示间隔是-1个元素,即从后往前,相当于对a的元素进行倒序

    a = list(range(10))
    # a   [0,1,2,3,4,5,6,7,8,9]
    print(a[-2:-5:-1])
    8,7,6
    print(a[-2:-5])
    []
    print(a[-1::-1]) # 倒叙
    9,8,7,6,5,4,3,2,1,0
    
    
  3. 循环

    遍历元组元素

    a = ((1,2,3), ('a','b','c'))
    # method1 双层循环
    for i in a:
        for j in i:
            print(j) # 打印每个元素
    1
    2
    3
    a
    b
    c
    # method2 单层循环
    # 注意:i,j,k的数量要与元组中每个元素中的元素个数相同,即每个元素如第0个元素(1,2,3)必须是三个子元素才可以
    for i, j, k in a:
        print(i, j, k)
    1 2 3
    a b c
    
    
  4. tuple特殊用法——交换

    交换两个变量的值

     a = (1,2,3)
     b = ('I love you')
     a, b = b, a
     print(a, b)
     # 输出
     I love you
     (1,2,3)
    
  5. 其他特性

    介绍其他特性,如count,index, max/min

    # 1. 计算某个元素的个数
    a = 1, 1, 2, 4, 10
    print(a.count(1))    # 2
    # 2. 计算某个元素的位置
    print(a.index(10)) # 4
    # 3. 计算最大值和最小值
    print(max(a), min(a)) # 10, 1
    # 4. 计算元素个数
    print(len(a))  # 5
    

集合-set

  1. 创建集合

    展示几种创建方式

    # 1. 使用set创建
    a = set() # 创建空集合
    print(a) # set()
    
    # 1-1. 创建非空集合
    a = set(1,2,3,4) # 这种写法错误
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    TypeError: set expected at most 1 arguments, got 3
    
    # 正确方式
    a = set((1,2,3))
    print(a)  # {1,2,3}
    
    # 1-2. 
    a = [1, 2, 'love']
    b = set(a)
    print(b) # {1, 2, 'love'}
    
    # 2. 使用大括号{}创建
    a = {1, 2, 3}
    print(a)  # {1, 2, 3}	
    
  2. 几个特性

    介绍几个集合的特性

    # 1. 长度 len
    a = {1, 2, 3}
    print(len(a))  # 3
    
    # 2. add 向集合中添加元素
    a = {1, 2, 3}
    print(a.add(10)) # 此句话返回是None
    a.add(10) # 此句话a已经增加了10这个元素
    print(a)  # {1,2,3,10}
    
    # 3. clear 清空
    a.clear()
    print(a)  # set()
    
    # 4. remove 移除某个元素,若移除的是集合中没有的元素,则报错
    a = {1, 2, 3, 12}
    a.remove(2)
    print(a)
    {1, 3, 12}
    a.remove(5) # 删除没有的元素,则报错
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    KeyError: 5
    
    # 5. discard 移除元素,删除集合中没有的元素,不报错
    a = {1, 10, 3, 12}
    a.discard(1)
    print(a) # 	{10, 3, 12}
    a.discard(1)
    print(a) # {10, 3, 12} , 不报错
    
    # 6. pop弹出集合中的一个元素,随机
    a = {1,2,3}
    a.pop()
    
    # 7. 数学运算
    # 交集 intersection
    a = {1, 2}
    b = {2, 3}
    print(a.intersection(b)) # {2}
    
    # 差集 difference
    # 另一种方式:直接用减号
    print(a.difference(b)) # {1}
    print(a-b) # {1}
    
    # 并集 union
    # 注意:并集不可以用加号表示
    print(a.union(b)) # {1,2,3}
    print(a+b) # 报错
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    TypeError: unsupported operand type(s) for +: 'set' and 'set'	
    

    注意: 并集不可以用加号‘+’表示

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值