zoukankan      html  css  js  c++  java
  • python---(元组)tuple

     1 # 元组-tuple
     2 #     -元组可以看成是一个不可更改的list
     3 t = ()
     4 print(type(t))
     5 # 创建一个只有一个值的元组
     6 t = (1,)
     7 print(type(t))
     8 print(t)
     9 
    10 t = 1,
    11 print(type(t))
    12 print(t)
    13 
    14 # 创建多个值的元组
    15 t = (1, 2, 3, 4, 5)
    16 print(type(t))
    17 print(t)
    18 
    19 t = 1, 2, 3, 4, 5
    20 print(type(t))
    21 print(t)
    22 
    23 # 使用其他结果构建
    24 list1 = [1, 2, 3, 4, 5, 6]
    25 t = tuple(list1)
    26 print(type(t))
    27 print(t)
    28 
    29 运行结果:::
    30 <class 'tuple'>
    31 <class 'tuple'>
    32 (1,)
    33 <class 'tuple'>
    34 (1,)
    35 <class 'tuple'>
    36 (1, 2, 3, 4, 5)
    37 <class 'tuple'>
    38 (1, 2, 3, 4, 5)
    39 <class 'tuple'>
    40 (1, 2, 3, 4, 5, 6)
     1 # 元组的特性
     2 #     -是一个有序列表
     3 #     -元组数据只可以访问, 不能修改
     4 #     -元组数据可以是任意类型
     5 #     -总之, list所有特性,除了可以修改, 元组都有
     6 #     -也就意味着,list具有的一些操作,比如索引,分片, 序列相加, 相乘资格操作,一模一样
     7 
     8 t = (1, 2, 3, 4, 5,)
     9 print(t[4])
    10 
    11 # # 超标错误
    12 # print(t[12])
    13 
    14 t = (1, 2, 3, 4, 5, 6)
    15 t1 = t[1::2]    #下表从1开始,跳数为2
    16 print(id(t))
    17 print(id(t1))
    18 print(t1)
    19 
    20 # 切片可以超标
    21 t2 = t[2::100]
    22 print(t2)
    23 
    24 
    25 :::
    26 5
    27 2822018933672
    28 2822019685688
    29 (2, 4, 6)
    30 (3,)
     1 # 序列相加
     2 t1 = (1, 2, 3)
     3 t2 = (5, 6, 7)
     4 # 传址操作
     5 print(t1)
     6 print(id(t1))
     7 
     8 t1 = t1 + t2
     9 print(t1)
    10 print(id(t1))
    11 
    12 # 以上操作类似于
    13 t1 = (1, 2, 3)
    14 t2 = (4, 5, 6)
    15 # tuple 的不可修改,指的是内容不可修改
    16 # 修改tuple内容会导致报错
    17 # t1[1] = 100 #报错,tuple不可修改
    18 
    19 :::
    20 (1, 2, 3)
    21 1950629436728
    22 (1, 2, 3, 5, 6, 7)
    23 1950628684712
    1 # 元组相乘
    2 t = (1, 2, 3)
    3 t =t * 3
    4 print(t)
    5 
    6 :::
    7 (1, 2, 3, 1, 2, 3, 1, 2, 3)
     1 t = (1, 2, 3)
     2 if 2 in t:
     3     print("yes")
     4 else:
     5     print("no")
     6 
     7 # 元组遍历, 一般采用for
     8 # 1、单层元组遍历
     9 t = (1, 2, 3, "xj", "i", "lvoe")
    10 for i in t:
    11     print(i, end=" ")
    12 print()
    13 
    14 # 2、双层元组的遍历
    15 t = ((1, 2, 3), (2, 3, 4), ("i", "love", "xj"))
    16 # 对以上元组的遍历, 可以如下
    17 
    18 for i in t:
    19     print(t)
    20 
    21 for k, m, n in t:
    22     print(k, "--", m, "--", n)
    23 
    24 :::
    25 yes
    26 1 2 3 xj i lvoe 
    27 ((1, 2, 3), (2, 3, 4), ('i', 'love', 'xj'))
    28 ((1, 2, 3), (2, 3, 4), ('i', 'love', 'xj'))
    29 ((1, 2, 3), (2, 3, 4), ('i', 'love', 'xj'))
    30 1 -- 2 -- 3
    31 2 -- 3 -- 4
    32 i -- love -- xj
     1 # 关于元祖的函数
     2 # len:获取元组的长度
     3 t = (1, 2, 3, 4, 5)
     4 print(len(t))
     5 
     6 # max, min, :最大值最小值
     7 # 如果, 列表或元组中有多个最大值最小值,则实际打印出哪个
     8 print(max(t))
     9 print(min(t))
    10 # tuple:转化或创建元祖
    11 list1 = [1, 2, 3, 4, 5]
    12 t = tuple(list1)
    13 print(t)
    14 t = tuple()
    15 print(t)
    16 
    17 
    18 # 元组的函数
    19 #     基本跟lsit通用
    20 # count:计算指定数据出现的次数
    21 t = (2, 1, 2, 3, 45, 1, 3, 2)
    22 print(t.count(2))
    23 
    24 # index:求指定元素在元组中的索引位置
    25 print(t.index(45))
    26 
    27 # 如果需要查找的数字是多个, 则返回第一个
    28 print(t.index(1))
    29 
    30 
    31 :::
    32 5
    33 5
    34 1
    35 (1, 2, 3, 4, 5)
    36 ()
    37 3
    38 4
    39 1
     1 # 元组变量交换发
     2 #     两个变量交换值
     3 a = 1
     4 b = 3
     5 print(a)
     6 print(b)
     7 print("-----------------")
     8 # java程序员会这么写
     9 c = a
    10 a = b
    11 b = c
    12 print(a)
    13 print(b)
    14 
    15 print("-----------------")
    16 
    17 # pyhton的写法
    18 a, b = b, a
    19 print(a)
    20 print(b)
    21 
    22 
    23 
    24 :::
    25 1
    26 3
    27 -----------------
    28 3
    29 1
    30 -----------------
    31 1
    32 3
  • 相关阅读:
    (圆形imageview 类似qq头像)---》(ps:引用第三库APAvatarImageView>
    uiscrollerview循环滚动(参考第三方库:HMBannerView)https://github.com/iunion/autoScrollBanner
    iOS -动态可变参数
    ios-UIPickerView基本使用
    iOS 实现进度条(progress)
    @property (nonatomic, getter = isExpanded) BOOL expanded;
    linker command failed with exit code 1 (use -v to see invocation)
    APICloud界面间跳转
    iOS CGRectGetMaxY/CGRectGetMaxX
    iOS UIView常用的一些方法setNeedsDisplay和setNeedsLayout 区别
  • 原文地址:https://www.cnblogs.com/Slxc/p/9712159.html
Copyright © 2011-2022 走看看