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

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

names = ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')
print(names) numbers1 = (50)
print(type(numbers1)) numbers2 = (50,)
print(numbers2) #输出:
#('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')
#<class 'int'>
#(50,)

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

names = ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')

for name in names:
print(name) #输出:
#Ralf
#Rachel
#Clark
#Leona
#Terry

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

names = ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')

print(names[1])
#输出:Rachel print(names[1:3])
#输出:('Rachel', 'Clark') print(names[:-1])
#输出: ('Ralf', 'Rachel', 'Clark', 'Leona') print(names[-1])
#输出: Terry print(names[::2])
#输出: ('Ralf', 'Clark', 'Terry')

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

names = ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')

names[2] = 'NewMan'
#输出: TypeError: 'tuple' object does not support item assignment

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

names = ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')
print(names)
names = ('Ralf', 'Rachel', 'Clark', 'Leona')
print(names)
del names
print(names) #输出: ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')
#输出: ('Ralf', 'Rachel', 'Clark', 'Leona')
#输出: NameError: name 'names' is not defined

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

names1 = ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry')

names2 = ('Ralf', 'Rachel', 'Clark', 'Leona')
names3 = names1 + names2
print(names3) #输出: ('Ralf', 'Rachel', 'Clark', 'Leona', 'Terry', 'Ralf', 'Rachel', 'Clark', 'Leona') names4 = (1, 2, ('a','b'))
print(names4)
print(names4[2])
print((names4[2])[0]) #输出: (1, 2, ('a', 'b'))
#输出: ('a', 'b')
#输出: a

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

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

Python 学习笔记6 变量-元组的更多相关文章

  1. Python 学习笔记2 变量

    Python变量的一些命名规则和指南 每种编程语言都需要变量, 这些变量的命名,我们一般会遵守一些公认的规则. 已达到方便自己,他人阅读的好处. 变量只能包含字母.数字和下划线.变量可以以字母和下划线 ...

  2. Python学习笔记----列表、元组和字典的基础操作

    文章目录 一.列表的基本操作 1.1 修改列表中的某个数据 1.2 获取某个元素的返回值(返回的是索引) 1.3 在列表中插入新的元素 1.4 删除列表中的元素 1.5 +和* 二.内置的函数和方法 ...

  3. 小甲鱼:Python学习笔记001_变量_分支_数据类型_运算符等基础

    1.下载并安装Python 3.5.0 Python是一个跨平台语言,Python从3.0的版本的语法很多不兼容2版本,官网找到最新的版本并下载:http://www.python.org 2.IDL ...

  4. Python 学习笔记6 变量-字典

    字典是python中一个十分重要的变量,他是一个可变的容器对象.通过一组key(键)和value(值)对组成一个元素. 组成形式为{'key':'value', 'key':'value'}.整个字典 ...

  5. Python 学习笔记5 变量-列表

    列表是python常用的一种变量. 是由一些列按照特定顺序排列的元素组成的.你可以创建包含字母表中的所有字母,数字.可以将任何东西都加入到列表中. 通常情况下,列表中都包含多个元素,所以建议变量的名称 ...

  6. Python 学习笔记4 变量-字符串

    Python中的字符串,我们可以简单的认为是一组用单引号,双引号,三引号包含的一组字符,数字或者特殊字符.在Python3中,所有的字符串都是Unicode字符串. 变量定义 #单引号 string1 ...

  7. Python 学习笔记3 变量-数字

    我们来具体了解下有关 number类型的变量的使用方式和含义. 在Python中的Number类型的变量包含以下几种: int: 通常我们所说的整数, 比如 1, 2 ,3 ,100, 3000 等等 ...

  8. Python学习笔记:变量

    什么是变量? 一般的理解是,变量是一个存储数据的容器 但是在python中的变量只存储数据的引用 变量的特性: 并不直接存储数据,而是引用着某个具体的数据 我们可以人为改变这个引用 定义变量 方式 变 ...

  9. python学习笔记5(元组)

    一.元组特性 1.类似列表,但不可变类型,正因如此,它可以做一个字典的key2.当处理一组对象时,这个组默认是元组类型3.所有的多对象,逗号分隔的,没有明确用符号定义的这些都默认为元组类型 >& ...

随机推荐

  1. day 15 - 2 内置函数练习

    内置函数练习 编写 sql 查询语句功能 文件内容: 1,Eva,22,13651054608,IT2,Vera,23,13304320533,Tearcher3,Renault,25,1333235 ...

  2. TCP/IP(五)传输层之细说TCP的三次握手和四次挥手

    前言 这一篇我将介绍的是大家面试经常被会问到的,三次握手四次挥手的过程.以前我听到这个是什么意思呀?听的我一脸蒙逼,但是学习之后就原来就那么回事! 一.运输层概述 1.1.运输层简介 这一层的功能也挺 ...

  3. python中的Iterable对象和Iterator

    参考链接:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/00143178254 ...

  4. 华为交换机配置stelnet登陆的实例

    作者:邓聪聪 为满足等堡安全要求,对测评对象的交换机做安全登陆的限制 :开启ssh的服务 stelnet server enable :#创建认证用户的用户名和密码 aaa local-user te ...

  5. formData 对象 与 Content-Type 类型

    FormData FormData对象用以将数据编译成键值对,以便用XMLHttpRequest来发送数据.其主要用于发送表单数据,但亦可用于发送带键数据(keyed data),而独立于表单使用.如 ...

  6. 【原创】运维基础之Docker(4)实用工具ctop

    ctop类似于top,top监控的是进程,ctop监控的是容器(container top) 安装 # wget https://github.com/bcicen/ctop/releases/dow ...

  7. 【原创】大数据基础之Hadoop(3)yarn数据收集与监控

    yarn常用rest api 1 metrics # curl http://localhost:8088/ws/v1/cluster/metrics The cluster metrics reso ...

  8. cdh zookeeper 不断拒绝连接

    测试hiveserver2高可用的时候,需要登录zookeeper检查hiveserver2是否在zookeeper中注册 执行 zookeeper-client 不断的拒绝连接 -- ::, [my ...

  9. 在CentOS 7上部署Ghost博客

    作者:waringid 一.简介 跟静态博客不同的是,Ghost 这种轻量级的动态博客,有一个管理后台,可以直接写作和管理博客.本质上,跟 WordPress 是相通的,只是 Ghost 搭建在 No ...

  10. k个一组翻转链表

    给出一个链表,每 k 个节点一组进行翻转,并返回翻转后的链表. k 是一个正整数,它的值小于或等于链表的长度.如果节点总数不是 k 的整数倍,那么将最后剩余节点保持原有顺序. 示例 : 给定这个链表: ...