网站首页 > 文章中心 > 其它

python元组操作函数_python元组操作方法

作者:小编 更新时间:2023-08-16 12:20:03 浏览量:122人看过

Python其实很简单 第九章 列表与元组(一)

语法格式:

如:

①.、访问列表元素

列表中元素的索引号从0开始标记,访问列表元素时,可以直接按照索引号读取.

输出结果:男

和字符串一样,序列都是可以使用切片操作的.

输出结果:['张三', '男']

格式:range(start, stop [,step]) ;start 指的是计数起始值,默认是 0;stop 指的是计数结束值,但不包括 stop ;step 是步长,默认为 1,不可以为 0 .range() 方法生成一段左闭右开的整数范围.

可以使用range()函数创建数值列表,如:

print(list1)

语法格式如下:

del listname

其中,listname为要删除列表的名称.

删除列表与删除变量的方法是完全一样的,前面已经介绍过了.

常用的遍历列表的方法有是利用for语句,举例如下:

list1=list(range(10))

for item in list1:

print(item,end=' ') # end=' '表示以空格结束,如果不写这个参数,相当于默认值end=' '

为了获取列表元素的索引值,就需要使用enumerate()函数.

for index,item in enumerate(list1):

print(index,'-',item,end=' ')

追加元素

list1=['春','夏','秋']

list1.append('冬')

list1

['春', '夏', '秋', '冬']

还有一种方法,就是使用"◆"号将两个序列连接起来.如:

list1=list1◆['冬']

输出结果为:['春', '夏', '秋', '冬']

注意,下面的做法是错误的:

list1=list1◆'冬'

Traceback (most recent call last):

File " ", line 1, in

TypeError: can only concatenate list (not "str") to list

从这个提示可知,列表只能与列表连接,而不能与字符串连接.

修改元素

['春', '夏', 'autumn', '冬']

删除元素

['春', '夏', '冬']

在讨论列表元素排序时,为了将有序列表变成无序列表,这里用到了shuffle()函数,但它不是Python的内置函数,需要先使用import语句将random模块包含进来,这样才能像使用内置函数那样使用扩展模块中的函数.

import random #导入random模块

random.shuffle(list1) #用random包中的shuffle()函数将list1中元素次序打乱

list1.sort() #对list1升序排列

random.shuffle(list1) #将list1顺序重新打乱

list1.sort(reverse=True) #对list1降序排列

方法sort()的语法格式:

listname.sort(key=None,reverse=False)

其中,listname表示要排序的列表;key表示指定一个键,如"key=str.lower"表示排序时不区分字母大小写;reverse为True表示降序排列(为默认值,可省缺),为False表示升序排列.

还有一个函数sorted(),功能与方法sort()相似.格式如下:

sorted(listname,key=None,reverse=False)

例1:生成指定范围的数值列表.

import random

radius

#生成列表s,将计算得到的周长值保存起来,其中round()可以保留指定小数位,格式 round(var, n),var为变量名,n为指定保留小数位.

s

good

count()、index()和sum()方法

count()方法

用于统计指定元素在列表中出现的次数.

例:

list1=['a','b','c','d','e','f','c','d','e','a','b','c','d']

num=list1.count('c') #统计列表list1中'c'的个数

num

index()方法

用于获取指定元素在列表中第一次出现的索引值.

position=list1.index('c')

position

sum()方法

用于计算数值列表中全部或指定元素的和.

total=sum(list1) #计算列表list1中全部元素的和

total

total=sum(list1,1) #在列表list1全部元素的和后,在加上参数("1")的值

二维列表

......

通俗地讲,如果一个列表中的元素本身就是一个列表,则这个列表就是一个二维列表.

list1=['a1','b1','c1','d1']

listtwo

如果要查看二维列表listtwo按照行、列的排列,可以运行如下代码:

print(listtwo[i][j],end=' ')

print()

运行结果:

a1 b1 c1 d1

如果要读取二维列表中的某一行,可以使用如下方法:

如果要读取某一个元素的值,可以使用如下方法:

Python元组常用操作小技巧

所以这篇文章,我们先来回顾和总结Python数据结构里常用操作.Python中常见的数据结构可以统称为容器(container).序列(如列表和元组)、映射(如字典)以及集合(set)是三类主要的容器.而扁平序列如str、bytes、bytearray、memoryview 和 array.array等不在这篇文章的讨论范围内.

在此,我们先从元组开始说起.

元组区别于列表的显著特征之一就是它不能被修改,但其另外一个作用就是 用于没有字段名的记录 [1] .因为后者经常被忽略,我们先来看看元组作为记录的作用.

使用括号就可以定义一个元组.元组中的每个元素都存放了记录中一个字段的数据,外加这个字段的位置.正是这个位置信息给数据赋予了意义.下面的例子中,元组就被当作记录加以利用:

输出为:

上述for循环中的操作提取了元组中的元素,也叫作拆包(unpacking).平行赋值是对元组拆包很好的应用,示例如下:

还有一个经典而优雅的应用是交换变量的值:

用 * 运算符把一个可迭代对象拆开作为函数的参数,例如Python的内置函数pmod接收两个数字类型的参数,返回商和余数.以下范例将使用 * 将元组传入函数.

有些函数有多个返回值,将其赋给一个变量时,变量类型即是元组:

上述内容不仅涵盖了元组的基本操作,同时也结合了实际工作中常搭配使用的其他函数、运算符等.在回顾这些知识时主要参考了两本经典的Python编程书籍:<<流畅的Python>>和<<像计算机科学家一样思考Python>>,有兴趣的朋友可以深入阅读!

希望这篇文章对你有帮助,下回将总结Python列表的使用技巧.

[1]<<流畅的Python>>:

学习Python元组,有哪些必须要掌握的内容

学习Python元组,有哪些必须要掌握的内容?

①Python元组

定义

元组是Python的一种内建数据结构.关于元组:

①.、元组属于序列,可以存放任意元素(任意类型对象),且有序(前后位置关系).

元组不可变,某些操作比列表高效.

创建元组

可以用以下两种方法创建元组:

①.、使用()创建

图:使用()创建元组

使用()可以创建元组,元组元素间使用","分隔,元组内部元素可以是任意元素,也可以是元组.

图:创建元组代码示例

元组不可变除了不能修改,也不能删除元组元素,但删除与元组绑定的变量是没问题的.

图:元组不可变

使用()方式创建只有一个元素的元组时要注意,因为一个元素使用()括起来,表示元素本身,如100, (100),两者等价,如果创建只包含100的元组应该使用:(100,)方式.

图:使用()创建只有一个元素的元组

使用构造函数tuple()创建元组.了解更多信息可以使用help(tuple)来查看具体帮助内容.

图:tuple函数帮助

①.、tuple()如果没有参数创建一个空元组.

图:使用tuple函数创建元组

和字符串列表一样,元组支持使用整数索引(下标方式访问),也支持切片方式访问元组的元素.

!!!需要注意的是下标索引不能越界!!!

①.、使用索引访问:

图:使用索引访问元组元素

图:使用切片访问元组

常用内建函数len、max、min、sum、reversed可以操作元组,函数解释如下:

操作示例如下:

注意事项:

使用min,max,sum函数操作元组,元组元素类型能被函数接受才可以,否则将报异常等错误.

主要有count和index方法:

count返回元组中对应值的个数,index返回对应值的位置(索引).

元组支持 ◆ 连接, * 复制运算,in /not in 运算

图:元组运算

字符串,元组,列表都属于Python的序列结构,序列具有很多相同的属性和操作方法,如:序列中的每个元素被分配一个序号(位置,也叫索引),序号(索引)从0开始,依次类推;序列都支持切片操作等等.

图:序列通用操作

Python内置了多种序列结构:字符串、列表、元组、Unicode字符串、buffer对象、range对象.序列是Python中一种重要的数据结构,必须要掌握,也很容易掌握.

Python中的元组如何应用?

元组是不可变的,即元组的项不能被修改.元组用圆括号"()"括起来,并用逗号","来分隔其中的项.

例如,下面的元组包含了三个不同数据类型的项:

与列表不同的是,元组一旦创建就不可修改,如果尝试修改,Python解释器会报错:

元组是一种序列类型,所以呢,上一节介绍的通用序列操作元组也都支持,此处不再赘述.下面要介绍的是元组的另外一些用法或特性.

①.、 创建元组

在创建元组时,可以不用加圆括号(除非它是其他数据类型的一部分,如一个在列表中的元组,此时必须加圆括号):

可以使用元组的工厂函数tuple()创建元组.如果要创建一个空的元组,可以使用不包含任何项的圆括号或者是没有参数的tuple()函数:

tuple()函数也可以有参数,且参数必须为可迭代对象:

创建只有一个项的元组时有个"小陷阱",即用圆括号创建元组时,如果括号中只有一个项,而没有逗号,那么创建的并不是元组,而是这个项本身的类型:

创建只有一个项的元组,应该在该项的后面紧跟着一个逗号(或者使用tuple()函数):

元组与列表一样,可以嵌套,同样元组中也可以包含列表:

关于Python的基础问题可以看下这个网页的视频教程,网页链接,希望我的回答能帮到你.

python里面元组是什么意思?

Python 是一种通用编程语言,其在科学计算和机器学习领域具有广泛的应用.如果我们打算利用 Python 来执行机器学习,那么对 Python 有一些基本的了解就是至关重要的.本 Python 入门系列体验就是为这样的初学者精心准备的.

列表的定义

列表的创建

向列表中添加元素

删除列表中的元素

获取列表中的元素

列表的常用操作符

列表的其他方法

元组

创建和访问一个元组

更新和删除一个元组

元组相关的操作符

内置方法

解压元组

列表

简单数据类型

整型

浮点型

布尔型

容器数据类型

字典

集合

字符串

关键点是「中括号 []」和「逗号 ,」

中括号 把所有元素绑在一起

逗号 将每个元素一一分开

列表的创建 创建一个普通列表x = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']

print(x, type(x))

# ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']

利用range()创建列表x = list(range(10))

# [0, 0, 0, 0, 0]

x = [i for i in range(10)]

注意:

# [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]

x[0][0] = 1

# [[1, 0, 0], [1, 0, 0], [1, 0, 0], [1, 0, 0]]

print(mix, type(mix))

创建一个空列表empty = []

print(empty, type(empty)) # []

列表不像元组,列表内容可更改 (mutable),所以呢附加 (append,extend)、插入 (insert)、删除 (remove,pop) 这些操作都可以用在它身上.

list.append(obj)在列表末尾添加新的对象,只接受一个参数,参数可以是任何数据类型,被追加的元素在 list 中保持着原结构类型.

x = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']

x.append('Thursday')

print(x)

# ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Thursday']

此元素如果是一个 list,那么这个 list 将作为一个整体进行追加,注意append()和extend()的区别.

x.append(['Thursday', 'Sunday'])

# ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', ['Thursday', 'Sunday']]

list.extend(seq)在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

x.extend(['Thursday', 'Sunday'])

# ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Thursday', 'Sunday']

严格来说append是追加,把一个东西整体添加在列表后,而extend是扩展,把一个东西里的所有元素添加在列表后.

list.insert(index, obj)在编号index位置插入obj.

# ['Monday', 'Tuesday', 'Sunday', 'Wednesday', 'Thursday', 'Friday']

list.remove(obj)移除列表中某个值的第一个匹配项

x.remove('Monday')

print(x) # ['Tuesday', 'Wednesday', 'Thursday', 'Friday']

list.pop([index=-1])移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

y = x.pop()

print(y) # Friday

y = x.pop(0)

print(y) # Monday

print(y) # Wednesday

print(x) # ['Tuesday', 'Thursday']

remove和pop都可以删除元素,前者是指定具体要删除的元素,后者是指定一个索引.

如果知道要删除的元素在列表中的位置,可使用del语句.

print(x) # ['Wednesday', 'Thursday', 'Friday']

通过元素的索引值,从列表获取单个元素,注意,列表索引值是从0开始的.

x = ['Monday', 'Tuesday', 'Wednesday', ['Thursday', 'Friday']]

print(x[0], type(x[0])) # Monday

print(x[-1], type(x[-1])) # ['Thursday', 'Friday']

切片的通用写法是start : stop : step

"start :"

以step为 1 (默认) 从编号start往列表尾部切片.

": stop"

以step为 1 (默认) 从列表头部往编号stop切片.

week = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']

"start : stop"

以step为 1 (默认) 从编号start往编号stop切片.

- "start : stop : step"

以具体的step从编号start往编号stop切片.注意最后把step设为 -1,相当于将列表反向排列.

print(week[::-1])

# ['Friday', 'Thursday', 'Wednesday', 'Tuesday', 'Monday']

" : "

复制列表中的所有元素(浅拷贝).

print(week[:])

list1.sort()

list1[0][0] = 111

等号操作符:==

连接操作符◆

重复操作符*

成员关系操作符in、not in

「等号 ==」,只有成员、成员位置都相同时才返回True.

列表拼接有两种方式,用「加号 ◆」和「乘号 *」,前者首尾拼接,后者复制拼接.

前面三种方法(append,extend,insert)可对列表增加元素,它们没有返回值,是直接修改了原数据对象. 而将两个list相加,需要创建新的 list 对象,从而需要消耗额外的内存,特别是当 list 较大时,尽量不要使用 "◆" 来添加list.

列表的其它方法

list.count(obj)统计某个元素在列表中出现的次数

list.index(x[, start[, end]])从列表中找出某个值第一个匹配项的索引位置

list.reverse()反向列表中元素

x.reverse()

list.sort(key=None, reverse=False)对原列表进行排序.

key-- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序.

reverse-- 排序规则,reverse = True降序,reverse = False升序(默认).

该方法没有返回值,但是会对列表的对象进行排序.

x.sort()

x.sort(reverse=True)

# 获取列表的第二个元素

def takeSecond(elem):

return elem[1]

x.sort(key=takeSecond)

x.sort(key=lambda a: a[0])

小括号把所有元素绑在一起

逗号将每个元素一一分开

Python 的元组与列表类似,不同之处在于tuple被创建后就不能对其进行修改,类似字符串.

元组使用小括号,列表使用方括号.

元组与列表类似,也用整数来对它进行索引 (indexing) 和切片 (slicing).

print(t1, type(t1))

创建元组可以用小括号 (),也可以什么都不用,为了可读性,建议还是用 ().

元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用.

x = (1)

print(type(x)) #

x = []

x = ()

x = (1,)

创建二维元组.

print(x[0])

更新和删除一个元组week = ('Monday', 'Tuesday', 'Thursday', 'Friday')

print(week) # ('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday')

元组有不可更改 (immutable) 的性质,所以呢不能直接给元组的元素赋值,但是只要元组中的元素可更改 (mutable),那么我们可以直接更改其元素,注意这跟赋值其元素不同.

元组拼接有两种方式,用「加号 ◆」和「乘号 *」,前者首尾拼接,后者复制拼接.

元组大小和内容都不可更改,所以呢只有count和index两种方法.

print(t.count('python')) # 1

count('python')是记录在元组t中该元素出现几次,显然是 1 次

解压(unpack)一维元组(有几个元素左边括号定义几个变量)

(a, b, c) = t

print(a, b, c)

解压二维元组(按照元组里的元组结构来定义变量)

(a, b, (c, d)) = t

print(a, b, c, d)

如果你只想要元组其中几个元素,用通配符「*」,英文叫 wildcard,在计算机语言中代表一个或多个元素.下例就是把多个元素丢给了rest变量.

a, b, *rest, c = t

如果你根本不在乎 rest 变量,那么就用通配符「*」加上下划线「_」.

a, b, *_ = t

python自学笔记13:元组和字典的操作

定义元组(tuple):

元组的操作:

元组类型数据不支持修改,可查找

查找:

按下标查找:

print(t1[1])

函数查找:

print(t1.index(1))返回对应下标,如果数据不存在,程序将报错

print(t1.count(1))统计数据在元组当中出现的次数

print(len(t1))统计元组当中的数据个数

注意:当元组内嵌套列表数据,可以通过下标的方法对列表数据进行修改如:

——————————————————

定义字典(dict)

字典的特点

①.:符号为{}

字典的操作:

dict1["name"]="小红"

如果key存在,将修改其所对应的值.如果不存在,将在字典最后添加该键值对

del():删除字典或删除字典内的键值对

del dict1["name"] 删除字典内的键值对,如果删除的key不存在,程序将会报错

del(del)删除字典

clear(dict1) 清空字典

一.按照key进行查找,最后返回相对应的值

二.按函数进行查找:

(1) get(key,默认值):

如果查找的key不存在则返回所写的默认值,如果不写默认值则返回None

print(dict1.get("name")) #小明

print(dict1.get("id",110)) # 110

print(dict1.keys())

返回 ["name","age","gender"]

for key in dict1.keys():

..print(key)

逐行输出name age gender

print(dict1.values())

for value dict1.values():

..print(value)

print(dict1.items()) 可用for遍历

for item in dict1.items():

..print(item)

遍历字典键值对(拆包) 可在for内使用两个临时变量

for key,value in dict1.items():

..print(f"{key}=value")

逐行输出:

以上就是土嘎嘎小编为大家整理的python元组操作函数相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章