内容简介:前言: 好久不见,突然发觉好久没写博客了,最近迷上了简单的语法定义就不记录了,从数据结构开始,程序最重要的就是操作数据,学习一门编程语言毫无疑问必须掌握它独有的数据结构。现在就从列表是 Python 编程中使用频率极高的数据结构,由一系列按特定顺序排列的元素组成,用 [] 表示,逗号分隔元素,类似 Java 中的
前言: 好久不见,突然发觉好久没写博客了,最近迷上了 Python
无法自拔,了解了一下, Python
简单易学,尤其是接触过 java
的人,入门 Python
更是门槛极低,本着学习记录的原则,边学习边记录,有利于梳理学习的成果,也有利于后期的复盘,所以今天开始 Python
学习之旅的第一篇博客,纯粹只是记录。
简单的语法定义就不记录了,从数据结构开始,程序最重要的就是操作数据,学习一门编程语言毫无疑问必须掌握它独有的数据结构。现在就从 列表 开始。
列表是 Python 编程中使用频率极高的数据结构,由一系列按特定顺序排列的元素组成,用 [] 表示,逗号分隔元素,类似 Java 中的 数组 。列表被创建来存储数据,是动态的,随时可以对列表进行 crud 操作。由于列表包含多个元素,所以通常命名为复数形式,如 names,letters 等。
基本格式
fruits = ["apple","bananer","oranger"] print(fruits) 复制代码
访问列表元素
跟大多数编程语言一样,python列表数据的访问也是通过索引来获取,第一个元素从 0
开始,最后一个元素索引为列表的总数据和减一。 python
也提供可另一种特殊语法,可以直接使用 -1
作为索引获取最后一个元素,依次减一逆向获取数据。获取到列表数据之后 可以直接拿来进行任何操作。
print(fruits[0])//获取第一个元素 `apple` print(fruits[-1])//获取最后一个元素`oranger` 复制代码
修改列表元素
直接根据索引拿到对应位置的元素,对其重新赋值即可。
fruits[0] = "watermelon"//修改第一个元素 print(fruits)//重新打印列表 复制代码
此时列表变更为: ['watermelon', 'bananer', 'oranger']
增加元素
- 调用
append()
方法在列表末尾添加元素
fruits.append("Plum") print(fruits) 复制代码
此时列表为: ['apple', 'bananer', 'oranger', 'Plum']
- 调用
insert()
方法在指定索引出插入数据
fruits.insert(1,"pear")//在索引为1处插入数据 print(fruits) 复制代码
此时列表为: ['apple', 'pear', 'bananer', 'oranger']
删除列表中的数据
- 知道索引的情况下,直接使用
del
删除数据
del fruits[0]//删除第一个数据 print(fruits) 复制代码
此时列表为: ['pear', 'bananer', 'oranger']
- 调用
pop()
弹出列表列表数据,并返回弹出的数据。如果不传参数,默认弹出列表最后一个元素,若传入索引值,则弹出指定索引元素
print(fruits.pop())//弹出最后一个元素,并打印 print(fruits) print(fruits.pop(0))//弹出第一个元素,并打印 print(fruits) 复制代码
注意此时结果为:
oranger ['pear', 'bananer'] pear ['bananer'] 复制代码
- 假如不知道元素的索引,而直到具体要删除的元素值,也可以直接调用
remove()
方法删除,注意 删除之后,还可以继续使用该元素。
fruits = ["apple","bananer","oranger","prea"] print(fruits) delete = "bananer"//删除的元素 fruits.remove(delete)//调用方法删除指定元素值 print(fruits) print(delete)//最后打印删除掉的元素 复制代码
结果为:
['apple', 'bananer', 'oranger', 'prea'] ['apple', 'oranger', 'prea'] bananer 复制代码
列表排序
- 调用
sort()
对列表元素进行排序,默认是按自然顺序排序,如果要逆向排序,可传入 参数reverse=True
,排序之后 列表的顺序就永久改变了。
fruits = ["bananer","apple","oranger","prea"] print(fruits) fruits.sort() print(fruits) 复制代码
结果为:
['bananer', 'apple', 'oranger', 'prea'] ['apple', 'bananer', 'oranger', 'prea'] 复制代码
- 假如我们想临时该表一下列表的顺序,可以使用
sorted()
方法
fruits = ["bananer","apple","oranger","prea"] print(fruits) print(sorted(fruits)) print(fruits) 复制代码
结果为:
['bananer', 'apple', 'oranger', 'prea'] ['apple', 'bananer', 'oranger', 'prea'] ['bananer', 'apple', 'oranger', 'prea'] 复制代码
可见 列表顺序并没有改变。
使用 reserse()
方法,翻转列表元素
fruits = ["bananer","apple","oranger","prea"] print(fruits) fruits.reverse()//翻转列表元素 print(fruits) 复制代码
结果为:
['bananer', 'apple', 'oranger', 'prea'] ['prea', 'oranger', 'apple', 'bananer'] 复制代码
使用 len()
方法获取列表长度
fruits = ["bananer","apple","oranger","prea"] print(len(fruits)) 复制代码
结果明显为4.
for 循环遍历列表
这跟 java
中类似,格式为 for xxx in 列表名:
,遍历获取到列表数据之后,我们可以对它进行任何操作
fruits = ["bananer","apple","oranger","prea"] for fruit in fruits: print(fruit) 复制代码
结果为遍历打印出各个元素:
bananer apple oranger prea 复制代码
注意:python 中代码块是没有{}的,都是用4个空格缩进代表代码块,for循环,if 循环,while循环,方法体都是如此,编写代码时一定要注意缩进
快速组装数字列表
ranger()
传入起始值和结束值可以按顺序产生一系列数字,再使用 list()
可以快速组装一定任意范围的数字列表
numbers = list(range(1,6))//组装列表 print(numbers) 复制代码
结果: [1, 2, 3, 4, 5]
其实使用遍历也可以实现,但是这种方法更加便捷。
列表生成式
使用 [表达式 for 变量值 in range(x,x) if xxx]
只需一条语句就可以快速生成数值列表,其中表达式是遍历数值结果进行操作,还可以添加 if 条件。
numbers = [x * x for x in range(1,6)]//求平方数值列表 print(numbers) 复制代码
结果为: [1, 4, 9, 16, 25]
这种表达式相当简洁,原先的好几行只需一行就能搞定。
使用切片裁剪获取子列表
使用 列表名[x:y]
裁剪获取对应索引区间的子列。假如省略起始值x,默认从0索引开始裁剪,假如省略结束值y,默认裁剪余下的所有元素。
fruits = ["bananer","apple","oranger","prea"] print(fruits[0:2]) 复制代码
结果为: ['bananer', 'apple']
至此,基本的列表操作差不多都总结完了,顺便记录一下 元组
(xxx,yyy,zzz)
小白式学 python3 第一篇总结,如有不妥之处,麻烦在评论区指出,谢谢~
参考:廖大教程https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000
更多原创文章会在公众号第一时间推送,欢迎扫码关注 张少林同学
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- IBN:傻瓜式网络配置
- Swift 傻瓜技巧 #6:有动画或无动画
- 傻瓜式编程范式,程序员的基本功
- 音视频技术傻瓜版解析:带你解锁RTMP
- 傻瓜式安装基于Apache服务部署虚拟主机功能
- AI应用开发基础傻瓜书系列3-损失函数
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
首席产品官2 从白领到金领
车马 / 机械工业出版社 / 79元
《首席产品官》共2册,旨在为产品新人成长为产品行家,产品白领成长为产品金领,最后成长为首席产品官(CPO)提供产品认知、能力体系、成长方法三个维度的全方位指导。 作者在互联网领域从业近20年,是中国早期的互联网产品经理,曾是周鸿祎旗下“3721”的产品经理,担任CPO和CEO多年。作者将自己多年来的产品经验体系化,锤炼出了“产品人的能力杠铃模型”(简称“杠铃模型”),简洁、直观、兼容性好、实......一起来看看 《首席产品官2 从白领到金领》 这本书的介绍吧!