首页 > 编程语言 >python基础(元组)

python基础(元组)

时间:2024-10-30 10:19:14浏览次数:3  
标签:__ iterator python 元素 基础 元组 tup1 print

学习目标:元组的概念,创建,访问元组元素,删除和修改,推导式

一.元组的概念:

1.元组和列表类似,元素用小括号()包围
2.各元素之间使用逗号隔开
3.有序的,不可变的数据类型,没有增删该查,如果要修改,可以采用其他的数据类型,给元组重新赋值
4.元素可以是不同的数据类型

二.创建元组
1.创建元组,使用小括号(),元素之间用逗号分隔,注意:当元组只有一个元素时,这个元素的后面必须要有一个逗号
例如:

tup = (2)
print(tup,type(tup))#2 <class 'int'>
tup = (2,)
print(tup,type(tup))#(2,) <class 'tuple'>

三.访问元组元素
1.使用索引访问元组中的元素,索引从0开始
例如:

color = ("white","red","blue","yellow","pink")
print(color[2])#用索引值为2来获取元素 blue

2.切片操作:可以通过切片操作获取元组的子集
例如:

color = ("white","red","blue","yellow","pink")
print(color[1:4])#('red', 'blue', 'yellow')

3.连接元组,可以使用 + 运算符来连接两个元组
例如:

tup1 =(1,2)
tup2 =(3,)
print(tup1 +tup2)

四.元组的删除和修改
1.使用del语句删除不在使用元组元组
例如:

tup1 = (1,2,3,4)
del tup1
print(tup1)#会输出错误提示:NameError: name 'tup1' is not defined,说明"tup1"变量未定义,从而删除元组

2.元组时不可变的数据类型,但可以通过给元组赋值可以进行修改,或者转变成其他数据类型(列表等)
例如:

tup1 = (1,2,3,4)
重新给元组赋值
tup1 = (5,6,7,8)
tuple1 = (1, 2, 3, 4, 5)
list1 = list(tuple1)#把元组转换成列表
list1[0] = 10
tuple2 = tuple(list1)
print(tuple2)  # 输出 (10, 2, 3, 4, 5)

五.元组推导式
1.一种简洁的创建元组的方式,特别适用于快速生成较小的元组。
例如:

squares = (x*x for x in range(5))
print(tuple(squares))#(0, 1, 4, 9, 16)

2.表达式中添加条件来筛选元素。
例如:

squares = (x*x for x in range(5) if x%2 == 0)
print(tuple(squares))#(0, 4, 16)

3.还可以使用__next__方法来获取迭代器的下一个元素
例如:

my_iterator = iter([1, 2, 3, 4, 5])
print(my_iterator.__next__())  # 输出: 1
print(my_iterator.__next__())  # 输出: 2
print(my_iterator.__next__())  # 输出: 3
print(my_iterator.__next__())  # 输出: 4
print(my_iterator.__next__())  # 输出: 5

# 因为没有更多元素可迭代,下面的代码会引发StopIteration异常
print(my_iterator.__next__())

4.可以用zip()函数迭代的对象(元组,列表)作为参数,将对应的元素组合成一个个元组,常与for循环一起搭配使用
例如:

tuple1 = (1,2,3,4,5)
tuple2 = ("red","bule","yellow","brown","black")
for i in zip(tuple1,tuple2):
    print(i)
 '''
 输出
(1, 'red')
(2, 'bule')
(3, 'yellow')
(4, 'brown')
(5, 'black')
'''

总结:
元组是一个有序的,不可表的序列,可以是不同的数据类型,可以用普通索引和切片索引获取元素

标签:__,iterator,python,元素,基础,元组,tup1,print
From: https://blog.csdn.net/qq_37789343/article/details/143313616

相关文章

  • 深入Python爬虫技术:数据存储与反爬虫策略
    深入Python爬虫技术:数据存储与反爬虫策略在第一篇文章中,我们介绍了Python爬虫的基础知识和简单的网页内容获取方法。接下来,我们将继续深入学习,探讨如何有效地存储爬取的数据,以及应对网站的反爬虫机制。数据存储可以帮助我们积累并组织数据,而反爬虫策略则确保爬虫在不断变化......
  • JAVA基础必备集合框架 @简单易懂
    Java基础框架是指在Java开发中常用的一些框架和库,它们提供了一些通用的功能,以简化开发过程。以下是一些重要的Java基础框架的详细讲解:1.SpringFramework概述Spring是一个广泛使用的企业级应用开发框架,提供了全面的基础设施支持,特别适合构建JavaEE应用。主要特性控制反......
  • Linux系统编程基础
    这里主要记录了博主容易忘记的命令,并不全面。Lec1基础命令一、常见命令datekelvin@kelvin-V:~$date2024年10月30日星期三07:46:32CSTcat/etc/shellskelvin@kelvin-V:~$cat/etc/shells#/etc/shells:validloginshells/bin/sh/usr/bin/sh/bin/bash/us......
  • 使用最小二乘法进行线性回归(Python)
    已知测得某块地,当温度处于15至40度之间时,数得某块草地上小花朵的数量和温度值的数据如下表所示。现在要来找出这些数据中蕴含的规律,用来预测其它未测温度时的小花朵的数量。测得数据如下图所示:importmatplotlib.pyplotaspltimportnumpyasnptemperatures=[15,20,......
  • 基于图论的时间序列数据平稳性与连通性分析:利用图形、数学和 Python 揭示时间序列数据
    时间序列数据表示了一个随时间记录的值的序列。理解这些序列内部的关系,尤其是在多元或复杂的时间序列数据中,不仅仅局限于随时间绘制数据点(这并不是说这种做法不好)。通过将时间序列数据转换为图,我们可以揭示数据片段内部隐藏的连接、模式和关系,帮助我们发现平稳性和时间连通......
  • Linux基础常识
    1什么是shellshell是Linux系统的用户界面,提供了用户与内核交互的一种接口,它接收用户输入的命令并到送到内核去执行,因此也被称为Linux的命令解释器。显示系统当前使用的shellecho${SHELL} #/bin/bash查看系统当前使用的所有shellcat/etc/shells#/bin/sh#/bin/......
  • Vue.js组件开发全面指南:从基础到高级应用
    1.Vue.js组件概述1.1什么是Vue.js组件Vue.js组件是Vue.js框架中的核心概念,它是一种封装了特定功能的可复用代码单元。每个组件可以包含自己的模板、逻辑和样式,使得开发者能够构建大型应用时,像搭积木一样组合这些独立的组件。组件基于自定义元素进行扩展,使得开发者能够创......
  • 基于python的语音识别与蓝牙通信的温控系统
    基于python的语音识别与蓝牙通信的温控系统大家好我是小俊学长,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于python的语音识别与蓝牙通信的温控系统。项目源码以及部署相关请联系小俊学长,文末附上联系信息。......
  • 【Python原创毕设|课设】基于Python Flask IT行业招聘可视化分析系统-文末附下载方式,
    基于PythonFlask物流行业招聘可视化分析系统(获取方式访问文末官网)一、项目简介二、开发环境三、项目技术四、功能结构五、运行截图六、数据库设计七、功能实现八、源码获取一、项目简介本系统是一款基于PythonFlask的IT行业招聘可视化分析平台,旨在为行业用户提供......
  • 实验2 类和对象_基础编程1
    一、实验目的加深对OOP中类、对象的理解,能够解释类的封装、类的接口会使用C++语法规则正确定义、实现、测试类;会使用类创建对象,并基于对象编程针对具体问题场景,练习运用面向对象思维进行设计,合理利用C++语言特性(访问权限控制,static,friend,const),在数据共享和保护......