元组初识

元组的认识

首先,我们来认识一下元组:

# 定义一个元组
uesr_tuple = ("zhangsan", "lisi", "wangwu")
# 定义一个空元组
empty_tuple = ()

元组的作用和定义

  • 通过前面的学习,我们知道,列表通常用来存储相同类型的数据;而元组在实际开发中,通常用来存储不同类型的数据
  • 元组(Tuple)与列表相似,不同之处在于元组的元素不能修改
  • 元组表示多个元素组成的序列;用于存储一串信息,不同数据之间用逗号隔开;
  • 元组的索引从0开始;

元组的定义语法

变量名 = (数据1, 数据2, 数据3,...)
eg:
uesr_tuple = ("zhangsan", "lisi", "wangwu")

定义元组和取值

# 定义一个常规元组
user_tuple = ("xiaoming", 18, 175)
# 注意,取值时,索引不能超过元组的元素数量范围,否则报错
user_tuple[0]
'xiaoming'
user_tuple[2]
175 # 定义空元组;
empty_tuple = ()
type(empty_tuple) # tuple # 定义一个单元素元组;
# 如果元组中只有一个数据,要在那一个数据后面加逗号,否则该元组变量会被python解释器认为是括号内数据的数据类型;
single_tuple = (5)
type(single_tuple) # int single_tuple = (5,)
type(single_tuple) # tuple

元组的操作函数

查看元组操作函数

在ipython交互式下,新建一个元组empty_tuple;empty_tuple. 按一下tab键,即可查看元组函数

In [1]: t_tuple = ()   

In [2]: t_tuple.
t_tuple.count t_tuple.index In [2]: t_tuple.

由此可见,元组自带的操作函数只有两个:

t_tuple.count  t_tuple.index

取值和取索引(index)

user_info = ("xiaoming", 20, 181, "xiaoming")

print(user_info[1])  # 10
# 已经知道元组内容,希望获取该内容在元组中的位置
# 如果有两个相同的数据,取索引会取出现的第一个
print(user_info.index("xiaoming")) # 0

统计计数(count,len)

user_info = ("xiaoming", 20, 181, "xiaoming")
# 使用元组自带的函数统计元素出现个数
print(user_info.count("xiaoming")) # 2 # 使用关键字 统计元组中的元素个数
print(len(user_info)) # 4

元组其他扩展

元组 循环遍历

元组遍历就是 从头到尾 依次从元组中取数据;

每次循环都将 从元组中顺序的读取出来的数据放在临时变量中,然后执行相同的操作。

使用for进行迭代遍历。

user_tuple = ["zhangsan", 20, 181]
for i in user_tuple:
# 因为通常元组的元素数据类型不同,所以一般很少遍历元组做操作,
# 除非确定元组中每一个元素的数据类型
print(i)

在Python中,可以使用for循环遍历所有非数字型类型的变量:列表,元组,字典以及字符串

元组应用场景

  • 函数的参数和返回值;一个函数可以接收任意多个参数,或者一次返回多个数据。
  • 格式字符串,格式化字符串后面的()本质上就是一个元组。
  • 保护数据安全,列表不能被修改。

元组和格式化字符串

格式化后面的括号和内容,本质上就是元组;我们可以先定义一个元组,然后在格式化后面%元组,一样能输出;

同时,我们甚至可以将print括号里面的函数拿出来,定义成一个变量,再用print输出。

# 四者的输出结果都一样
# zhangsan 的年龄是 20, 身高是 181
name = "zhangsan"
age = 20
height = 181
print("%s 的年龄是 %d, 身高是 %d" % (name, age, height)) userinfo = ("zhangsan", 20, 181) print("%s 的年龄是 %d, 身高是 %d" % (userinfo[0], userinfo[1], userinfo[2])) # 也可以这样玩
print("%s 的年龄是 %d, 身高是 %d" % userinfo) # 还可以这样玩
info = "%s 的年龄是 %d, 身高是 %d" % userinfo
print(info)

元组和列表之间的转换

元组转列表:list()

列表转元组:tuple()

num_list = [2,1,4,3]
type(num_list) # list num_tuple = tuple(num_list)
type(num_tuple) # tuple num_list2 = list(num_tuple)
type(num_list2) # list

Python基础之元组的更多相关文章

  1. python基础深入(元组、字符串、列表、字典)

    python基础深入(元组.字符串.列表.字典) 一.列表 1.追加 >>>list = [1,2,3,4] #用于在列表末尾添加新的对象,只能单个添加,该方法无返回值,但是会修改原 ...

  2. python基础数据类型--元组(tuple)

    python基础数据类型--元组(tuple) 一.元组的定义和特性 定义:与列表相似,只不过就是将[ ] 改成 ( ) 特性:1.可以存放多个值 2.不可变 3.按照从左到右的顺序定义元组元素,下标 ...

  3. python3速查参考- python基础 4 -> 元组 + 字典 + 字符串 的学习

    元组 元组:特点就是内容不可变,算只读的列表,可以被查询,不能被修改 a = 2, print(a) print(type(a)) b = ('a','b','c') print(b[1]) 运行结果 ...

  4. python基础之元组、文件操作、编码、函数、变量

    1.集合set 集合是无序的,不重复的,主要作用: 去重,把一个列表变成集合,就可以自动去重 关系测试,测试两组数据的交集,差集,并集等关系 操作例子如下: list_1 = [1,4,5,7,3,6 ...

  5. 2.python基础深入(元组、字符串、列表、字典)

    一,对象与类 对象: python中一切皆为对象,所谓对象:我自己就是一个对象,我玩的电脑就是对象,玩的手机就是对象. 我们通过描述属性(特征)和行为来描述一个对象的. 在python中,一个对象的特 ...

  6. python基础之元组(Tuple)、字典(Dictionary)详解

    元组定义 元组是另一个数据类型,类似于List(列表). 元组用”()”标识.内部元素用逗号隔开.但是元素不能二次赋值,相当于只读列表. 举例: tuple = ( ‘abcd’, 786 , 2.2 ...

  7. python基础之元组,集合

    一.元组 为何要有元组,存放多个值,元组不可变,更多的是用来做查询 t=(,[,],,)) #t=tuple((,[,],,))) print(type(t)) 元组可以作为字典的key d={(,, ...

  8. Python基础之元组和字典

    一.元组: 1.定义: 内存图: 2.基本操作 3.元组作用: 4.元组基础知识代码 # . 创建空元组 t01 = () t02 = tuple() # . 创建具有默认值的元组 t01 = (,, ...

  9. python基础-列表元组字典

    1.列表和元组 列表可以对数据实现最方便的存储.修改等操作 names=["Alex","tenglan","Eric","Rai ...

随机推荐

  1. Python第二十六天 python装饰器

    Python第二十六天 python装饰器 装饰器Python 2.4 开始提供了装饰器( decorator ),装饰器作为修改函数的一种便捷方式,为工程师编写程序提供了便利性和灵活性装饰器本质上就 ...

  2. Iterm2/Mac自带终端工具快速进入你想进入的虚拟机教程

    一.首先我们在终端本地要写一个登录的脚本,eg: 当然首先要touch login.sh 啦,下面就是脚本文件,比较low,大神勿喷,会更炫酷写法的小伙伴可以自己参考这个思路写,不会的直接复制就好啦 ...

  3. windows dll的def文件

    DLL(testcase_1.dll )源码:myfun.h #pragma once #ifdef TESTCASE_1_EXPORTS #define MY_API __declspec(dlle ...

  4. python3 变量理解 解释器理解 常量理解 用户交互理解 逻辑运算

    先来条NLP再说...... 九,每人都已经具备使自己快乐的资源 每一个人都有过成功快乐的体验,也即是说有使自己快乐的能力. 人类只用了大脑能力极少部分,提升大脑的运用,很多新的突破便会出现. 运用大 ...

  5. CAP 2.5 版本中的新特性

    前言 首先,恭喜 CAP 已经成为 eShopOnContainers 官方推荐的生产环境可用的 EventBus 之一. 自从上次 CAP 2.4 版本发布 以来,已经过去了几个月的时间,关注的朋友 ...

  6. ASP.NET Core 共享第三方依赖库部署的正常打开方式

    曾经: 写了一篇: ASP.Net Core on Linux (CentOS7) 共享第三方依赖库部署 当第二次想做相同的事,却遇上了Bug,于是有了第二篇: ASP.NET Core 共享第三方依 ...

  7. python进程和线程(六)

    协程 协程,又称微线程,纤程.英文名Coroutine.顾名思义,协程是协作式的,也就是非抢占式的程序(线程是抢占式的).协程的关键字是yield,一看到这个就想到了生成器对不对?那就顺便回顾一下生成 ...

  8. 广告等第三方应用嵌入到web页面方案 之 使用iframe嵌入

    有些项目中可能会遇到这样的需求, 需要在一个项目中嵌入其他的项目的页面或者功能.并且需要这两个页面之间能够进行交互. 本文主要介绍如何实现这种第三方应用的嵌入, 主要有以下几个方向: 1.iframe ...

  9. springboot~内嵌redis的使用

    对于单元测试来说,我们应该让它尽量保持单一环境,不要与网络资源相通讯,这样可以保证测试的稳定性与客观性,对于springboot这个框架来说,它集成了单元测试JUNIT,同时在设计项目时,你可以使用多 ...

  10. [开发技巧]·HTML检测输入已完成自动填写下一个内容

    [开发技巧]·HTML检测输入已完成自动填写下一个内容 个人网站 --> http://www.yansongsong.cn 在上一个博客中简易实现检测输入已完成,我们实现了检测输入已完成,现在 ...