跟老齐学Python之有容乃大的list(1)
前面的学习中,我们已经知道了两种python的数据类型:int和str。再强调一下对数据类型的理解,这个世界是由数据组成的,数据可能是数字(注意,别搞混了,数字和数据是有区别的),也可能是文字、或者是声音、视频等。在python中(其它高级语言也类似)把状如2,3这样的数字划分为一个类型,把状如“你好”这样的文字划分一个类型,前者是int类型,后者是str类型(这里就不说翻译的名字了,请看官熟悉用英文的名称,对日后编程大有好处,什么好处呢?谁用谁知道!)。
前面还学习了变量,如果某个变量跟一个int类型的数据用线连着(行话是:赋值),那么这个变量我们就把它叫做int类型的变量;有时候还没赋值呢,是准备让这个变量接收int类型的数据,我们也需要将它声明为int类型的变量。不过,在python里面有一样好处,变量不用提前声明,随用随命名。
这一讲中的list类型,也是python的一种数据类型。翻译为:列表。下面的黑字,请看官注意了:
LIST在python中具有非常强大的功能。
定义
在python中,用方括号表示一个list,[ ]
在方括号里面,可以是int,也可以是str类型的数据,甚至也能够是True/False这种布尔值。看下面的例子,特别注意阅读注释。
>>> a=[] #定义了一个变量a,它是list类型,并且是空的。 >>> type(a) <type 'list'> #用内置函数type()查看变量a的类型,为list >>> bool(a) #用内置函数bool()看看list类型的变量a的布尔值,因为是空的,所以为False False >>> print a #打印list类型的变量a []
不能总玩空的,来点实的吧。
>>> a=['2',3,'qiwsir.github.io'] >>> a ['2', 3, 'qiwsir.github.io'] >>> type(a) <type 'list'> >>> bool(a) True >>> print a ['2', 3, 'qiwsir.github.io']
用上述方法,定义一个list类型的变量和数据。
本讲的标题是“有容乃大的list”,就指明了list的一大特点:可以无限大,就是说list里面所能容纳的元素数量无限,当然这是在硬件设备理想的情况下。
list索引
尚记得在《玩转字符串(3)》中,曾经给字符串进行编号,然后根据编号来获取某个或者某部分字符,这样的过程,就是“索引”(index)。
>>> url = "qiwsir.github.io" >>> url[2] 'w' >>> url[:4] 'qiws' >>> url[3:9] 'sir.gi'
在list中,也有类似的操作。只不过是以元素为单位,不是以字符为单位进行索引了。看例子就明白了。
>>> a ['2', 3, 'qiwsir.github.io'] >>> a[0] #索引序号也是从0开始 '2' >>> a[1] 3 >>> [2] [2] >>> a[:2] #跟str中的类似,切片的范围是:包含开始位置,到结束位置之前 ['2', 3] #不包含结束位置 >>> a[1:] [3, 'qiwsir.github.io'] >>> a[-1] #负数编号从右边开始 'qiwsir.github.io' >>> a[-2] 3 >>> a[:] ['2', 3, 'qiwsir.github.io']
对list的操作
任何一个行业都有自己的行话,如同古代的强盗,把撤退称之为“扯乎”一样,纵然是一个含义,但是强盗们愿意用他们自己的行业用语,俗称“黑话”。各行各业都如此。这样做的目的我理解有两个,一个是某种保密;另外一个是行外人士显示本行业的门槛,让别人感觉这个行业很高深,从业者有一定水平。
不管怎么,在python和很多高级语言中,都给本来数学角度就是函数的东西,又在不同情况下有不同的称呼,如方法、类等。当然,这种称呼,其实也是为了区分函数的不同功能。
前面在对str进行操作的时候,有一些内置函数,比如s.strip(),这是去掉左右空格的内置函数,也是str的方法。按照一贯制的对称法则,对list也会有一些操作方法。
追加元素
>>> a = ["good","python","I"] >>> a ['good', 'python', 'I'] >>> a.append("like") #向list中添加str类型"like" >>> a ['good', 'python', 'I', 'like'] >>> a.append(100) #向list中添加int类型100 >>> a ['good', 'python', 'I', 'like', 100]
官方文档这样描述list.append()方法
list.append(x) Add an item to the end of the list; equivalent to a[len(a):] = [x].
从以上描述中,以及本部分的标题“追加元素”,是不是能够理解list.append(x)的含义呢?即将新的元素x追加到list的尾部。
列位看官,如果您注意看上面官方文档中的那句话,应该注意到,还有后面半句: equivalent to a[len(a):] = [x],意思是说list.append(x)等效于:a[len(a):]=[x]。这也相当于告诉我们了另外一种追加元素的方法,并且两种方法等效。
>>> a ['good', 'python', 'I', 'like', 100] >>> a[len(a):]=[3] #len(a),即得到list的长度,这个长度是指list中的元素个数。 >>> a ['good', 'python', 'I', 'like', 100, 3] >>> len(a) 6 >>> a[6:]=['xxoo'] >>> a ['good', 'python', 'I', 'like', 100, 3, 'xxoo']
顺便说一下len(),这个是用来获取list,str等类型的数据长度的。在字符串讲解的时候也提到了。
>>> name = 'yeashape' >>> len(name) #str的长度,是字符的个数 8 >>> a=[1,2,'a','b'] #list的长度,是元素的个数 >>> len(a) 4 >>> b=['yeashape'] >>> len(b) 1
下一讲继续list,有容乃大。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

本文解释了如何使用美丽的汤库来解析html。 它详细介绍了常见方法,例如find(),find_all(),select()和get_text(),以用于数据提取,处理不同的HTML结构和错误以及替代方案(SEL)

Python的statistics模块提供强大的数据统计分析功能,帮助我们快速理解数据整体特征,例如生物统计学和商业分析等领域。无需逐个查看数据点,只需查看均值或方差等统计量,即可发现原始数据中可能被忽略的趋势和特征,并更轻松、有效地比较大型数据集。 本教程将介绍如何计算平均值和衡量数据集的离散程度。除非另有说明,本模块中的所有函数都支持使用mean()函数计算平均值,而非简单的求和平均。 也可使用浮点数。 import random import statistics from fracti

Python 对象的序列化和反序列化是任何非平凡程序的关键方面。如果您将某些内容保存到 Python 文件中,如果您读取配置文件,或者如果您响应 HTTP 请求,您都会进行对象序列化和反序列化。 从某种意义上说,序列化和反序列化是世界上最无聊的事情。谁会在乎所有这些格式和协议?您想持久化或流式传输一些 Python 对象,并在以后完整地取回它们。 这是一种在概念层面上看待世界的好方法。但是,在实际层面上,您选择的序列化方案、格式或协议可能会决定程序运行的速度、安全性、维护状态的自由度以及与其他系

本文比较了Tensorflow和Pytorch的深度学习。 它详细介绍了所涉及的步骤:数据准备,模型构建,培训,评估和部署。 框架之间的关键差异,特别是关于计算刻度的

本文讨论了诸如Numpy,Pandas,Matplotlib,Scikit-Learn,Tensorflow,Tensorflow,Django,Blask和请求等流行的Python库,并详细介绍了它们在科学计算,数据分析,可视化,机器学习,网络开发和H中的用途

该教程建立在先前对美丽汤的介绍基础上,重点是简单的树导航之外的DOM操纵。 我们将探索有效的搜索方法和技术,以修改HTML结构。 一种常见的DOM搜索方法是EX

本文指导Python开发人员构建命令行界面(CLIS)。 它使用Typer,Click和ArgParse等库详细介绍,强调输入/输出处理,并促进用户友好的设计模式,以提高CLI可用性。

文章讨论了虚拟环境在Python中的作用,重点是管理项目依赖性并避免冲突。它详细介绍了他们在改善项目管理和减少依赖问题方面的创建,激活和利益。
