首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python 自动化指南(繁琐工作自动化)第二版:四、列表

列表数据类型 列表包含有序序列中多个值值。术语列表值指的是列表本身(它是一可以存储在变量中像任何其他值一样传递给函数值),不是列表值内部值。...用切片从另一列表中获取一列表 就像索引可以从列表中获取单个值一样,切片可以以新列表形式从列表中获取多个值。像索引一样,切片在方括号之间键入,但它有两由冒号分隔整数。...请注意索引切片之间区别。 spam[2]索引列表(一整数)。 spam[1:4]切片列表(两整数)。 在切片中,第一整数切片开始索引。第二整数切片结束索引。...如果您需要从不改变有序值序列,请使用元组。使用元组不是列表第二好处,因为它们不可变,它们内容不会改变,所以 Python 可以实现一些优化,使使用元组代码比使用列表代码略快。...整数不变值;更改spam变量实际上让它引用内存中一完全不同值。 但是列表不是这样工作,因为列表值可以改变;也就是说,列表可变。下面一些代码,可以使这种区别更容易理解。

1.4K10

精品|系统入门Python,大佬这篇笔记不容错过

这些特点引起读者对切片得到什么样元素感到困惑。有小窍门可以帮助大家快速锁定切片元素,如下图。 ?...索引切片 元组中可以用整数来对它进行索引 (indexing) 和切片 (slicing),不严谨讲,前者获取单个元素,后者获取一组元素。...,把一东西整体添加在列表后, extend 扩展,把一东西里所有元素添加在列表后。...,因此只有那些不可更改数据类型才能当键,比如整数 (虽然怪怪)、浮点数 (虽然怪怪)、布尔 (虽然怪怪)、字符、元组 (虽然怪怪),列表却不行,因为它可更改。...这么学真的系统简单。此外学时候一定要带着“它优缺点是什么”这样问题,所有东西都有 trade-off,一满身都是缺点东西就没有存在必要,既然存在肯定有可取之处。

2.2K40
您找到你想要的搜索结果了吗?
是的
没有找到

【干货】 Python入门深度好文(上篇)

这些特点引起读者对切片得到什么样元素感到困惑。有小窍门可以帮助大家快速锁定切片元素,如下图。 ?...索引切片 元组中可以用整数来对它进行索引 (indexing) 和切片 (slicing),不严谨讲,前者获取单个元素,后者获取一组元素。...,把一东西整体添加在列表后, extend 扩展,把一东西里所有元素添加在列表后。...,因此只有那些不可更改数据类型才能当键,比如整数 (虽然怪怪)、浮点数 (虽然怪怪)、布尔 (虽然怪怪)、字符、元组 (虽然怪怪),列表却不行,因为它可更改。...这么学真的系统简单。此外学时候一定要带着“它优缺点是什么”这样问题,所有东西都有 trade-off,一满身都是缺点东西就没有存在必要,既然存在肯定有可取之处。

1.7K10

Python编程常见问题与解答

4.问:为什么使用pip命令安装扩展库提示“不是内部外部命令,也不是可运行程序批处理文件”?...11.问:在代码中x列表使用y=x.sort()语句把它排序后结果赋值给y,然后使用y.index(3)查看3在y中下标时,为什么会提示“AttributeError: 'NoneType...答:在Python中,不可哈希(unhashable)和可变意思一样整数、实数、复数、字符串、元组这些不可变,或者说是可哈希列表、字典、集合可变,或者说是不可哈希。...答:使用切片操作修改列表中部分元素时,如果第三数字step值不等于1,那么等号左侧切片长度和等号右侧列表长度必须一致。...19.问:已知x字符,想使用x+1得到下一字符,为什么提示“TypeError: can only concatenate str (not "int") to str”呢?

3.1K10

盘一盘 Python 系列 1 - 入门篇 (上)

这些特点引起读者对切片得到什么样元素感到困惑。有小窍门可以帮助大家快速锁定切片元素,如下图。...索引切片 元组中可以用整数来对它进行索引 (indexing) 和切片 (slicing),不严谨讲,前者获取单个元素,后者获取一组元素。...,把一东西整体添加在列表后, extend 扩展,把一东西里所有元素添加在列表后。...,因此只有那些不可更改数据类型才能当键,比如整数 (虽然怪怪)、浮点数 (虽然怪怪)、布尔 (虽然怪怪)、字符、元组 (虽然怪怪),列表却不行,因为它可更改。...这么学真的系统简单。此外学时候一定要带着“它优缺点是什么”这样问题,所有东西都有 trade-off,一满身都是缺点东西就没有存在必要,既然存在肯定有可取之处。

1.1K50

盘一盘 Python 系列 1 - 入门篇 (上)

这些特点引起读者对切片得到什么样元素感到困惑。有小窍门可以帮助大家快速锁定切片元素,如下图。...索引切片 元组中可以用整数来对它进行索引 (indexing) 和切片 (slicing),不严谨讲,前者获取单个元素,后者获取一组元素。...,把一东西整体添加在列表后, extend 扩展,把一东西里所有元素添加在列表后。...,因此只有那些不可更改数据类型才能当键,比如整数 (虽然怪怪)、浮点数 (虽然怪怪)、布尔 (虽然怪怪)、字符、元组 (虽然怪怪),列表却不行,因为它可更改。...这么学真的系统简单。此外学时候一定要带着“它优缺点是什么”这样问题,所有东西都有 trade-off,一满身都是缺点东西就没有存在必要,既然存在肯定有可取之处。

1.1K30

python基础教程:元组

元组元组)跟列表(名单)非常相似,二者之间差异就是元组不可改变,列表可以改变。...元组x前两元素'a',1都是不可变第三元素list,这个列表可以改变,但不能把第三元素赋值为其它列表(上面示例中最后一操作)其它任何类型数据。 ?...元组元组切片切片元组切片列表也是一样 In [27]: mytuple[1:3] Out[27]: ['b', 3] In [28]: mytuple[:3] Out[28]: ['...Out[55]: 3 (2)max() 返回元组元素中最大值,元组元素必须同一类型且可比较,比如都是数字型都是字符串,如果类型不统一就会报错: In [57]: max(('a', 'b',...: '<' not supported between instances of 'str' and 'int' (4)sum() 计算元组所有元素和,其元素类型必须数值型整数,浮点数) In

72650

len(x) 击败 x.len(),从内置函数看 Python 设计思想

这就引出本文最想讨论问题来:为什么 Python 要设计成 len(x) 这种前缀表达,不是 x.len() 这样后缀表达呢?...它告诉了两点:返回值整数,参数某种容器。但当读到 x.len() 时,必须事先知道某种容器 x,它实现了一接口,或者继承了一拥有标准 len() 方法类。...想起在《超强汇总:学习Python列表,只需这篇文章就够了》这篇文章中,曾引述过 Guido 对“为什么索引从 0 开始 ”解释。其最重要原因,也正是 0-based 索引最优雅易懂。...让我们来先看看切片用法。可能最常见用法,就是“取前 n 位元素”“从第i 位索引起,取后 n 位元素”(前一种用法,实际上 i == 起始位特殊用法)。...求长度方法就不能一种独立存在对象么?它之所以存在,是因为有“对象”存在,不是因为有某个类才存在啊。

58620

len(x) 击败 x.len(),从内置函数看 Python 设计思想

这就引出本文最想讨论问题来:为什么 Python 要设计成 len(x) 这种前缀表达,不是 x.len() 这样后缀表达呢?...它告诉了两点:返回值整数,参数某种容器。但当读到 x.len() 时,必须事先知道某种容器 x,它实现了一接口,或者继承了一拥有标准 len() 方法类。...想起在《超强汇总:学习Python列表,只需这篇文章就够了》这篇文章中,曾引述过 Guido 对“为什么索引从 0 开始 ”解释。其最重要原因,也正是 0-based 索引最优雅易懂。...让我们来先看看切片用法。可能最常见用法,就是“取前 n 位元素”“从第i 位索引起,取后 n 位元素”(前一种用法,实际上 i == 起始位特殊用法)。...求长度方法就不能一种独立存在对象么?它之所以存在,是因为有“对象”存在,不是因为有某个类才存在啊。

56020

len(x) 击败 x.len(),从内置函数看 Python 设计思想

这就引出本文最想讨论问题来:为什么 Python 要设计成 len(x) 这种前缀表达,不是 x.len() 这样后缀表达呢?...它告诉了两点:返回值整数,参数某种容器。但当读到 x.len() 时,必须事先知道某种容器 x,它实现了一接口,或者继承了一拥有标准 len() 方法类。...想起在《超强汇总:学习Python列表,只需这篇文章就够了》这篇文章中,曾引述过 Guido 对“为什么索引从 0 开始 ”解释。其最重要原因,也正是 0-based 索引最优雅易懂。...让我们来先看看切片用法。可能最常见用法,就是“取前 n 位元素”“从第i 位索引起,取后 n 位元素”(前一种用法,实际上 i == 起始位特殊用法)。...求长度方法就不能一种独立存在对象么?它之所以存在,是因为有“对象”存在,不是因为有某个类才存在啊。

66130

Pyhon学习(六)Python tuple元组详解

参考链接: Python tuple() 元组 Python 中另一重要序列结构,和列表类似,也是由一系列按特定顺序排序元素组成  元组列表区别:  列表可以任意操作元素,可变序列  元组不可变序列...中,元组通常都是使用一对小括号将所有元素括起来,但小括号不是必须,只要将各元素用逗号隔开,Python 就会将其视为元组,举个例子:  a_tuple = "博客","https://blog.csdn.net.../lxd13699" print(a_tuple)  运行结果为:  ('博客', 'https://blog.csdn.net/lxd13699')  当创建元组中只有一元素时,此元组后面必须要加一逗号...但是,元组不是完全不能修改。...,不能元组和字符串列表进行连接,否则抛出 TypeError 错误。

41120

为什么range不是迭代器?range到底是什么类型?

;(2)它接收参数必须整数,可以是负数,但不能浮点数等其它类型;(3)它是不可变序列类型,可以进行判断元素、查找元素、切片等操作,但不能修改元素;(4)它是可迭代对象,却不是迭代器。...翻看文档,官方这样明确划分——有三种基本序列类型:列表元组和范围(range)对象。...这倒一直没注意,原来 range 类型居然跟列表元组一样地位基础序列!一直记挂着字符串不可变序列类型,不曾想,这里还有一位不可变序列类型呢。...TypeError: unsupported operand type(s) for *: 'range' and 'int' 那么问题来了:同样不可变序列,为什么字符串和元组就支持上述两种操作,偏偏...4、小结 回顾全文,得到了两偏冷门结论:range 可迭代对象不是迭代器;range 对象是不可变等差序列。 若单纯看结论的话,你也许没有感触,或许还会说这没啥了不得啊。

83870

len(x) 击败 x.len(),从内置函数看 Python 设计思想

这就引出本文最想讨论问题来:为什么 Python 要设计成 len(x) 这种前缀表达,不是 x.len() 这样后缀表达呢?...它告诉了两点:返回值整数,参数某种容器。但当读到 x.len() 时,必须事先知道某种容器 x,它实现了一接口,或者继承了一拥有标准 len() 方法类。...想起在《超强汇总:学习Python列表,只需这篇文章就够了》这篇文章中,曾引述过 Guido 对“为什么索引从 0 开始 ”解释。其最重要原因,也正是 0-based 索引最优雅易懂。...让我们来先看看切片用法。可能最常见用法,就是“取前 n 位元素”“从第i 位索引起,取后 n 位元素”(前一种用法,实际上 i == 起始位特殊用法)。...求长度方法就不能一种独立存在对象么?它之所以存在,是因为有“对象”存在,不是因为有某个类才存在啊。

81120

2022年最新Python大数据之Python基础【六】函数与变量

,比如集合不能保存列表,字典,集合 所以就不能判断其类型元素是否在集合内 # 3.字典判断元素是否在keys内,也就是是否其中切片 通过切片按照规则获取数据序列中一部分元素 tuple...肯定不行,因为不能使用索引获取数据 # set 可以切片么?...肯定不行,因为不能使用索引获取数据 # 结论: # 1.list str tuple 可以使用切片,格式:[起始位置:终止位置:步长],三者使用方式完全一致 # 2.所有的切片都不会在原有的数据上进行修改...,而是产生一数据序列 # 3.集合和字典无法切片,因为不能使用索引获取数据元素 2、公共函数 len :获取容器内元素个数 del:删除容器内元素 max :获取容器内数据最大值 min : 获取容器内元素最小值...3, 4) # 结论: ''' 1.返回值将函数内计算运行结果返回到函数外部调用位置,参与计算运行 2.函数可以不写返回值或者只写一return不写返回值内容,都会默认返回一None 3

1.2K20

Python进阶:全面解读高级特性之切片

众所周知,我们可以通过索引值(称下标)来查找序列类型(如字符串、列表元组…)中单个元素,那么,如果要获取一索引区间元素该怎么办呢?...对于列表来说,使用切片作为占位符,同样能够实现拼接列表效果。特别需要注意,给切片赋值必须可迭代对象。...这句报错中单词“iterable”指的是“可迭代”,即 int 类型不是可迭代字符串(string)类型可迭代,同样地,列表元组、字典等类型,都是可迭代。...那怎么判断一对象是否可迭代呢?为什么它们可迭代呢?怎么让一对象可迭代呢?...这是迭代器切片最具想象力用途场景。 除此之外,迭代器切片还有一实在应用场景:读取文件对象中给定行数范围数据。

90240

len(x) 击败 x.len(),从内置函数看 Python 设计思想

这就引出本文最想讨论问题来:为什么 Python 要设计成 len(x) 这种前缀表达,不是 x.len() 这样后缀表达呢?...它告诉了两点:返回值整数,参数某种容器。但当读到 x.len() 时,必须事先知道某种容器 x,它实现了一接口,或者继承了一拥有标准 len() 方法类。...想起在《超强汇总:学习Python列表,只需这篇文章就够了》这篇文章中,曾引述过 Guido 对“为什么索引从 0 开始 ”解释。其最重要原因,也正是 0-based 索引最优雅易懂。...让我们来先看看切片用法。可能最常见用法,就是“取前 n 位元素”“从第i 位索引起,取后 n 位元素”(前一种用法,实际上 i == 起始位特殊用法)。...求长度方法就不能一种独立存在对象么?它之所以存在,是因为有“对象”存在,不是因为有某个类才存在啊。

48930

len(x) 击败 x.len(),从内置函数看 Python 设计思想

这就引出本文最想讨论问题来:为什么 Python 要设计成 len(x) 这种前缀表达,不是 x.len() 这样后缀表达呢?...它告诉了两点:返回值整数,参数某种容器。但当读到 x.len() 时,必须事先知道某种容器 x,它实现了一接口,或者继承了一拥有标准 len() 方法类。...想起在《超强汇总:学习Python列表,只需这篇文章就够了》这篇文章中,曾引述过 Guido 对“为什么索引从 0 开始 ”解释。其最重要原因,也正是 0-based 索引最优雅易懂。...让我们来先看看切片用法。可能最常见用法,就是“取前 n 位元素”“从第i 位索引起,取后 n 位元素”(前一种用法,实际上 i == 起始位特殊用法)。...求长度方法就不能一种独立存在对象么?它之所以存在,是因为有“对象”存在,不是因为有某个类才存在啊。

50420

Python基础(三) | Python组合数据类型

、集合、range()等 字符串转列表 list("欢迎订阅本专栏") ['欢', '迎', '订', '阅', '本', '专', '栏'] 元组列表 list(("", "们", "", "像...")) ['', '们', '', '像'] 集合转列表 list({"李雷", "韩梅梅", "Jim", "Green"}) ['Green', 'Jim', '李雷', '韩梅梅'] 特殊range...(i) 1 2 3 4 5 3.2 元组 3.2.1 元组表达 元组可以使用多种类型元素,一旦定义,内部元素不支持增、删和修改操作序列类型 通俗讲,可以将元组视作“不可变列表” names...一旦确定,它自己就是它自己,变了就不是它了。 可变类型:列表、字典、集合。  一旦确定,还可以随意增删改。因此这三类型不能作为字典键。...一系列互不相等元素无序集合(互斥) 元素必须不可变类型:数字,字符串元组,可视作字典键 可以看做没有值,或者值为None字典 students = {"小明", "小红", "小强", "

2.6K20

一.为什么我们要学Python及基础语法详解

在这个喧嚣时代,很多技术概念会不断兴起,希望你能沉下心来去学习,不要急于求成,一步一脚印。当你把某个技术学好、学精后,还是能做一些事情,甚至能找到喜欢工作完成实践项目。...有时候程序员科研工作效率比机器效率更重要,对于很多复杂性功能,使用更加清晰语言能给程序减少更多负担,从而大大增强程序质量,其易学性和扩展性也能让新手很快上手。...---- 4.元组类型 元组列表类似的一种数据类型,它采用小括号定义一多个元素集合,其返回类型为tuple。...当元组定义后就不能进行更改,也不能删除,这不同于列表,由于元组不可变特性,它代码更加安全。 以下元组无效,因为元组不允许更新列表允许更新。...列表有序对象集合,字典无序对象集合。两者之间区别在于:字典当中元素通过键来存取不是通过偏移存取。

44110

Python入门:4000字讲透python数据类型元组

公众号:尤小屋 作者:Peter 编辑:Peter 大家好,Peter~ 元组tuple 在前面介绍python数据类型:列表list,我们发现list可以进行修改。...python数据类型 元组序列,和列表一样,但是元组元素不能更改 创建空元组 a = () a 下面的结果表示创建了一元组: () type(a) tuple 单个元素 b = (3,)...中一种有序数据类型,也是存在使用和切片概念 使用索引 使用索引号来访问元组元素 t6.index(0) # 元素0索引号 0 t6.index(6) # 元素6索引号 6 t6[8] #...正索引号 8 t6[-4] # 负索引号 5 t7.index("java") # 查看元素使用号 1 t7[1] # 通过索引号查看元素 'java' 使用切片 元组切片使用规则和列表完全一模一样...:3] (1, 4, 7) 元组列表比较 相同点 都是Python中有序数据类型 都存在很多相同操作方法:求长度、最值、成员判断、索引切片等 不同点 列表可直接修改,元组不行;我们可以将元组转成列表之后

53210
领券