Python 中list1 = [1, 3, 2],则 sum(list1) 的运行结果是多少?

Python 内置的四种常用数据结构:列表(list)、元组(tuple)、字典(dict)以及集合(set)。

这四种数据结构一但都可用于保存多个数据项,这对于编程而言是非常重要的,因为程序不仅需要使用单个变量来保存数据,还需要使用多种数据结构来保存大量数据,而列表、元组、字典和集合就可满足保存大量数据的需求。

列表(list)和元组(tuple)比较相似,它们都按顺序保存元素,每个元素都有自己的索引,因此列表和元组都可通过索引访问元素。二者的区别在于元组是不可修改的,但列表是可修改的。

字典(dict)和集合(set)类似,它们存储的数据都是无序的,其中字典是用 key-value 的形式保存数据

所谓序列,指的是一块可存放多个值的连续内存空间,这些值按一定顺序排列,可通过每个值所在位置的编号(称为索引)访问它们。

无论是采用正索引值,还是负索引值,都可以访问序列中的任何元素。

注意,在使用负值作为列序中各元素的索引值时,是从 -1 开始,而不是从 0 开始。

在列表中删除元素,主要分为以下 3 种应用场景:

  1. 根据目标元素所在位置的索引值进行删除,可使用 del 语句;
  2. 根据元素的值进行删除,可使用列表(list类型)提供的 remove() 方法;
  3. 将列表中所有元素全部删除,可使用列表(list类型)提供的 clear() 方法。

列表的元素相当于变量,因此程序可以对列表的元素赋值,这样即可修改列表的元素

slice 分片同样可以使用

a_list[1:3]='test' #对列表使用 slice 语法赋值时,不能使用单个值;如果使用字符串赋值, 会自动把字符串当成序列处理,其中每个字符都是一个元素。 a_list[2:6:2]=['MM','NN'] #在使用 slice 语法赋值时,也可指定 step 参数。但如果指定了 step 参数,则要求所赋值的列表元素个数与所替换的列表元素个数相等

除前面的增加元素、删除元素、修改元素方法之外,列表还包含了一些常用的方法。

count() 方法,此方法用于统计列表中某个元素出现的次数

index() 方法用于定位某个元素在列表中出现的位置(也就是索引),如果该元素没有出现,则会引发 ValueError 错误。此方法的基本语法格式为

同 count() 方法不同,index() 方法还可传入 start、end 参数,用于在列表的指定范围内搜索元素。

pop() 方法会移除列表中指定索引处的元素,如果不指定,默认会移除列表中最后一个元素。该方法的基本语法格式为:

reverse() 方法会将列表中所有元素反向存放。该方法的基本语法格式为:

sort() 方法用于对列表元素进行排序,排序后原列表中的元素顺序会方发生改变。sort() 方法的语法格式如下:

可以看到,和其他方法不同,此方法中多了 2 个参数,它们的作用分别是:
key 参数用于指定从每个元素中提取一个用于比较的键。例如,使用此方法时设置 key=str.lower 表示在排序时不区分字母大小写。
reverse 参数用于设置是否需要反转排序,默认 False 表示从小到大排序;如果将该参数设为 True,将会改为从大到小排序。

下面代码示范了使用列表作为“栈”的示例:

# 向栈中“入栈”3个元素 # 第一次出栈:最后入栈的元素被移出栈

ython range() 函数能够轻松地生成一系列的数字。例如,可以像如下这样使用 range() 来打印一系列数字:

队列和栈是两种数据结构,其内部都是按照固定顺序来存放变量的,二者的区别在于对数据的存取顺序:
队列是,先存入的数据最先取出,即“先进先出”。
栈是,最后存入的数据最先取出,即“后进先出”。

考虑到 list 类型数据本身的存放就是有顺序的,而且内部元素又可以是各不相同的类型,非常适合用于队列和栈的实现。本节将演示如何使用 list 类型变量来实现队列和栈。

使用 list 列表模拟队列功能的实现方法是,定义一个 list 变量,存入数据时使用 insert() 方法,设置其第一个参数为 0,即表示每次都从最前面插入数据;读取数据时,使用 pop() 方法,即将队列的最后一个元素弹出。
#定义一个空列表,当做队列 取第一个元素: one 取第二个元素: two
使用 list 列表模拟栈功能的实现方法是,使用 append() 方法存入数据;使用 pop() 方法读取数据。append() 方法向 list 中存入数据时,每次都在最后面添加数据,这和前面程序中的 insert() 方法正好相反。
取第二个元素: two 取第三个元素: one
#实现队列功能,从队列中取一个元素,根据先进先出原则,这里应输出 1 #实现栈功能,从栈里取一个元素,根据后进先出原则,这里应输出 hello

今天小编就为大家分享一篇Python3 把一个列表按指定数目分成多个列表的方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

遇到问题没人解答?小编创建了一个Python学习交流QQ群: 寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!

结果是一样的,但是+号生成的是一个新的对象,而extend则是在原地的修改a对象。

另外注意:列表的append方法,是往列表中添加新元素

python列表使用操作符+ 会有返回值(产生一个新的list)

我要回帖

更多关于 python怎么算数的总和 的文章

 

随机推荐