Python 学习笔记6 变量-元组

怼烎@ 2022-10-02 14:51 252阅读 0赞

我们在上一篇中了解了变量list(列表), 今天我们来介绍下元组。元组是由括号和逗号,组织起来的一个元素的集合。和list不同的是,它其中的元素是不能被修改的,和其他语言中的常量相类似。

需要注意的是,如果元组中只包含一个元素,那么在元组的最后需要加一个逗号,来申明他是一个元组,而不是一个被运算符括号保护起来的一个整数。

  1. names = ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')
  2. print(names)
  3. numbers1 = (50)
  4. print(type(numbers1))
  5. numbers2 = (50,)
  6. print(numbers2)
  7. #输出:
  8. #('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')
  9. #<class 'int'>
  10. #(50,)

我们可以像列表list那样使用循环来访问和遍历元组:

  1. names = ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')
  2. for name in names:
  3. print(name)
  4. #输出:
  5. #Ralf
  6. #Rachel
  7. #Clark
  8. #Leona
  9. #Terry

也可以使用[:]切片的方式来访问元组:

  1. names = ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')
  2. print(names[1])
  3. #输出:Rachel
  4. print(names[1:3])
  5. #输出:('Rachel', 'Clark')
  6. print(names[:-1])
  7. #输出: ('Ralf', 'Rachel', 'Clark', 'Leona')
  8. print(names[-1])
  9. #输出: Terry
  10. print(names[::2])
  11. #输出: ('Ralf', 'Clark', 'Terry')

元组中的元素的值是不能被修改的, 否则会爆出系统错误:

  1. names = ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')
  2. names[2] = 'NewMan'
  3. #输出: TypeError: 'tuple' object does not support item assignment

但是我们可以对元组进行删除和重新定义:

  1. names = ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')
  2. print(names)
  3. names = ('Ralf', 'Rachel', 'Clark', 'Leona')
  4. print(names)
  5. del names
  6. print(names)
  7. #输出: ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')
  8. #输出: ('Ralf', 'Rachel', 'Clark', 'Leona')
  9. #输出: NameError: name 'names' is not defined

多个元组可以进行合并,一个元组中也可以包含另一个元组:

  1. names1 = ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')
  2. names2 = ('Ralf', 'Rachel', 'Clark', 'Leona')
  3. names3 = names1 + names2
  4. print(names3)
  5. #输出: ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry', 'Ralf', 'Rachel', 'Clark', 'Leona')
  6. names4 = (1, 2, ('a','b'))
  7. print(names4)
  8. print(names4[2])
  9. print((names4[2])[0])
  10. #输出: (1, 2, ('a', 'b'))
  11. #输出: ('a', 'b')
  12. #输出: a

由于元组的不可修改的相关特性,所以它不支持排序、替换、添加等操作。 只保留了计算元素个数,最大值,最小值等方法。

也正是因为这种特性,我们在做一些方法传递或者参数传递的时候,可以使用元组,保证传出去的数值,是不可以修改的,确保安全性。

转载于:https://www.cnblogs.com/wanghao4023030/p/10679650.html

发表评论

表情:
评论列表 (有 0 条评论,252人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Python 学习笔记6 变量-

    我们在上一篇中了解了变量list(列表), 今天我们来介绍下元组。元组是由括号和逗号,组织起来的一个元素的集合。和list不同的是,它其中的元素是不能被修改的,和其他语言中的常

    相关 Python 学习

    元组:不可修改的序列 tuple(读音是 /tuːpəl/ 或 /tʌpəl/)与列表一样,元组也是序列,唯一的差别在于元组是不能修改的(你可能注意到了,字符串也不能修改