第4章 序列的应用

python的数据类型分为:空类型、布尔类型、数字类型、字节类型、字符串类型、元组类型、列表类型、字典类型、集合类型

在python中序列是一块用于存放多个值的连续内存空间。

python内置了5种序列分别是元组、列表、字典、集合、字符串

本章将介绍元组、列表、字典、集合四种序列类型,字符串将在第5章介绍

4.3 元组

元组的所有元素都放在一对中括号"()"中,两个相邻元素间使用逗号","分隔,在内容上,可以将整数、实数、字符串、列表、元组等任何类型的内容放入到元组中,并且元素的类型可以不同,因为它们之间没有任何关系。

元组是不可变序列

4.3.1 元组的创建和删除

1、直接使用()创建元组

tuplename = (element1, element2, ..., elementn)
tuple1 = ("Monday","Tuesday","wednesday","Thursday","Friday","Saturday","Sunday")
print(tuple1)
output:
('Monday', 'Tuesday', 'wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday')
# 拓展:创建只有一个元素的元组
# 错误的姿势
tuple1 = ("Monday")
print(tuple1)
print(type(tuple1))
output:
Monday
<class 'str'>
# 正确的姿势
tuple1 = ("Monday",)
print(tuple1)
print(type(tuple1))
output:
('Monday',)
<class 'tuple'>

2、创建空元组

emptytuple = ()
print(emptytuple)
print(type(emptytuple))
output:
()
<class 'tuple'>

3、使用tuple()创建数值元组

tuple(data)
tuple1 = tuple(range(10, 20, 1))
print(tuple1)
output:
(10, 11, 12, 13, 14, 15, 16, 17, 18, 19)

4、删除元组

del tuplename
tuple1 = ("Monday","Tuesday","wednesday","Thursday","Friday","Saturday","Sunday")
print(tuple1)
del tuple1
print(tuple1)
output:
('Monday', 'Tuesday', 'wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday')
NameError: name 'tuple1' is not defined

4.3.2 访问元组元素

1、索引

tuple1 = ("Monday","Tuesday","wednesday","Thursday","Friday","Saturday","Sunday")
print(tuple1[0])
output:
Monday
print(tuple1[-1])
output:
Sunday

2、遍历

tuple1 = ("Monday","Tuesday","wednesday","Thursday","Friday","Saturday","Sunday")
tuple2 = []
for i in tuple1:
tuple2.append(i)
print(tuple2)
output:
['Monday', 'Tuesday', 'wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']

4.3.3 修改元组元素

1、连接

连接的内容必须都是元组

tuple1 = ("Monday", "Tuesday", "wednesday")
tuple2 = ("Thursday", "Friday", "Saturday", "Sunday")
tuple3 = tuple1 + tuple2
print(tuple1)
print(tuple2)
print(tuple3)
output:
('Monday', 'Tuesday', 'wednesday')
('Thursday', 'Friday', 'Saturday', 'Sunday')
('Monday', 'Tuesday', 'wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday')

4.3.4 元组推导式

number = (i for i in range(4))
for i in number:
print(i,end="\n")
print(tuple(number))
output:
0
1
2
3
()

4.3.5 元组与列表的区别

1、列表属于可变序列,它的元素可以随时修改或者删除;元组属于不可变序列,元素不可修改,除非整体替换;

2、列表可以使用append()、extend()、insert()、remove()、pop()等方法实现修改列表元素;

3、列表可以使用切片访问和修改列表中的元素。元组也支持切片,但它只支持通过切片访问元组中元素,不支持修改。

4、元组比列表的访问和处理速度快,所以当只是需要对其中的元素进行访问,而不进行任何修改时,建议使用元组。

5、列表不能作为字典的键,而元组可以。

敬请关注个人微信公众号:测试工匠麻辣烫

Python3笔记018 - 4.3 元组的更多相关文章

  1. python3笔记目录大纲汇总

    篇一.python3基础知识和语句 python3笔记一:python基础知识 python3笔记二:进制转换与原码反码补码 python3笔记三:运算符与表达式 python3笔记四:if语句 py ...

  2. python3入门之列表和元组

    获得更多资料欢迎进入我的网站或者 csdn或者博客园 前面一张主要学习了Python的安装,以及第一个程序helloword的编写,以及简单的输入和输出函数,这章主要介绍序列,列表,元组 序列  这章 ...

  3. python3笔记十:python数据类型-Tuple元组

    一:学习内容 元组概念 元组创建.访问.删除 元组操作 元组方法 二:元组概念 1.本质:是一种有序集合 2.特点:与列表非常相似.一旦初始化就不能修改.使用小括号 三:元组创建 1.创建空元组 tu ...

  4. python3笔记十八:python列表元组字典集合文件操作

    一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle  #数据持久性模块 #封装的方法def OptionData(data,path):    # ...

  5. 小甲鱼Python3笔记

    000-愉快的开始 入门容易,学习难,代码量少. 跨平台: Windows, Mac OS, Linux, UNIX. 应用领域: 操作系统 WEB 3D动画 企业应用 云计算等等. 001-我和Py ...

  6. 廖雪峰Python3笔记

    主要复习过一遍 简介 略 安装 略 *** 第一个Python程序 第一行的注释: # _*_ coding: utf-8 _*_ #!/usr/bin/env python3 print() 可以接 ...

  7. python3笔记(二)Python语言基础

    缩进 要求严格的代码缩进是python语法的一大特色,就像C语言家族(C.C++.Java等等)中的花括号一样重要,在大多数场合还非常有必要.在很多代码规范里面也都有要求代码书写按照一定的规则进行换行 ...

  8. Python3 笔记

    Ubuntu18.04 Python3环境 默认python3已经安装了, 可能是安装其他应用的时候因为依赖关系安装的. 安装pip3, 先sudo apt update 一下, apt-cache ...

  9. Python学习笔记_week2_列表、元组、字典、字符串、文件、i编码

    一. 列表.元组 names=["A","B","C","D"] print(names) print(names[0] ...

随机推荐

  1. Java实现蓝桥杯VIP算法训练 预测身高

    试题 算法训练 预测身高 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述: 生理卫生老师在课堂上娓娓道来: 你能看见你未来的样子吗?显然不能.但你能预测自己成年后的身高,有公式: 男 ...

  2. Java实现 LeetCode 131 分割回文串

    131. 分割回文串 给定一个字符串 s,将 s 分割成一些子串,使每个子串都是回文串. 返回 s 所有可能的分割方案. 示例: 输入: "aab" 输出: [ ["aa ...

  3. Java实现蓝桥杯正则问题

    题目描述 考虑一种简单的正则表达式: 只由 x ( ) | 组成的正则表达式. 小明想求出这个正则表达式能接受的最长字符串的长度. 例如 ((xx|xxx)x|(x|xx))xx 能接受的最长字符串是 ...

  4. ClickHouse基本操作(一)

    常用SQL 创建表 1 2 3 4 5 6 7 CREATE TABLE b6logs( eventDate Date, impid UInt64, uid String, idfa String, ...

  5. HttpUtil工具类,发送Get/Post请求,支持Http和Https协议

    HttpUtil工具类,发送Get/Post请求,支持Http和Https协议 使用用Httpclient封装的HttpUtil工具类,发送Get/Post请求 1. maven引入httpclien ...

  6. [博主推荐]如何利用注册 的 bug 来疯狂注册,不停开小号"做"事情,支持 手机号&邮箱

    [博主推荐]如何利用注册 的 bug 来疯狂注册,不停开小号"做"事情,支持 手机号&邮箱  非常简单 1.手机号注册: 用手机号注册 网站基本都支持 可以用推荐的网址: ...

  7. C# 9.0 新特性之模式匹配简化

    阅读本文大概需要 2 分钟. 记得在 MS Build 2020 大会上,C# 语言开发项目经理 Mads Torgersen 宣称 C# 9.0 将会随着 .NET 5 在今年 11 月份正式发布. ...

  8. idea同时选中多个相同的内容并编辑

    原文链接: 首先选中你需要编辑的内容,然后Ctrl+R屏幕上会出现如下的操作栏 第一个框是查询并选中所有相同的内容第二个框是输入你要修改的内容,最后点击Replace all,就可以把所有内容替换.

  9. .Net Core基础的健康检查

    前言 健康检查能查看我们的应用程序当前是否是一个健康的运行状态.微软已经给我们提供了健康检查轮子,只需要简单的配置就能完成服务的状态检查.一起来实现一个最简单的健康检查吧. 开始 新建一个空的webA ...

  10. web api(基于NFine框架) 中接口跳转数据格式错误解决方案

    using NFine.Code; using NFine.Domain; using System.Web.Http; using Newtonsoft.Json; namespace Api.Co ...