Python笔记(二):列表+列表数据处理+函数

栏目: Python · 发布时间: 6年前

内容简介:Python笔记(二):列表+列表数据处理+函数

#才疏学浅,难免有不恰当之处,请不吝指正,谢谢。

#适合初学者。

列表的数据自下而上堆放(形成一个堆栈),类似于其他编程语言的数组。例如:

user = [ " 张三" , " 李四" , " 王五" ]

王五

李四

张三

使用[]中括号偏移量访问列表数据:

print(user[0])        输出: 张三

print(user[1])        输出:李四

print(user[2])        输出:王五

(一)列表常用的一些方法:

append() :在列表末尾增加一个数据项。
user = [<strong>"</strong><strong>张三"</strong>,<strong>"</strong><strong>李四"</strong>,<strong>"</strong><strong>王五"</strong>]
user.append(<strong>"</strong><strong>李留"</strong>)
此时,user = ['张三', '李四', '王五', '李留']
extend():在列表末尾增加一个数据项集合
user = [<strong>"</strong><strong>张三"</strong>,<strong>"</strong><strong>李四"</strong>,<strong>"</strong><strong>王五"</strong>]
user.extend([<strong>"</strong><strong>小明"</strong>,<strong>"</strong><strong>小丽"</strong>])
此时,user = ['张三', '李四', '王五', '小明', '小丽']
pop():删除列表末尾的数据。
user = [<strong>"</strong><strong>张三"</strong>,<strong>"</strong><strong>李四"</strong>,<strong>"</strong><strong>王五"</strong>]
user.pop()
此时,user = ['张三', '李四']
remove():移除一个特定的数据。
user = [<strong>"</strong><strong>张三"</strong>,<strong>"</strong><strong>李四"</strong>,<strong>"</strong><strong>王五"</strong>]
user.remove(<strong>"</strong><strong>张三"</strong>)
此时:user = [<strong>"</strong><strong>李四"</strong>,<strong>"</strong><strong>王五"</strong>]
insert():在指定位置前面增加一个数据项。
user = [<strong>"</strong><strong>张三"</strong>,<strong>"</strong><strong>李四"</strong>,<strong>"</strong><strong>王五"</strong>]
user.insert(0,<strong>"</strong><strong>张霖"</strong>)
此时:user = [<strong>'</strong><strong>张霖'</strong>, <strong>'</strong><strong>张三'</strong>, <strong>'</strong><strong>李四'</strong>, <strong>'</strong><strong>王五'</strong>]

(二)列表可以存放混合类型的数据,例如存放用户姓名和出生年份

user = [<strong>"</strong><strong>张三"</strong>,189,<strong>"</strong><strong>李四"</strong>,188,<strong>"</strong><strong>王五"</strong>,187]

(三)列表可以嵌套列表,支持多层嵌套(最多好像是支持100 层)

例如:
user = [<strong>"</strong><strong>张三"</strong>,189,<strong>"</strong><strong>李四"</strong>,188,<strong>"</strong><strong>王五"</strong>,187,[<strong>"</strong><strong>张三的年收入"</strong>,[<strong>"</strong><strong>工资收入"</strong>,<strong>"</strong><strong>津贴"</strong>,<strong>"</strong><strong>来源天上"</strong>]]]
[<strong>"</strong><strong>张三的年收入"</strong>,[<strong>"</strong><strong>工资收入"</strong>,<strong>"</strong><strong>津贴"</strong>,<strong>"</strong><strong>来源天上"</strong>]] 整个作为列表user的第6项数据。
<strong>访问列表的数据:</strong>
      print(user[0])        输出:张三
      print(user[6])        输出:[<strong>"</strong><strong>张三的年收入"</strong>,[<strong>"</strong><strong>工资收入"</strong>,<strong>"</strong><strong>津贴"</strong>,<strong>"</strong><strong>来源天上"</strong>]]
      print(user[6][0])     输出:<strong>张三的年收入</strong>
      print(user[6][1][1])  输出:<strong>工资收入</strong>

(四)使用for in 迭代处理列表。

user = [<strong>"</strong><strong>张三"</strong>,<strong>"</strong><strong>李四"</strong>,<strong>"</strong><strong>王五"</strong>,[<strong>"</strong><strong>张三的年收入"</strong>,[<strong>"</strong><strong>工资收入"</strong>,<strong>"</strong><strong>津贴"</strong>,<strong>"</strong><strong>来源天上"</strong>]]]
#python的for循环就是用来处理列表和其他迭代结构
#也可以通过while实现,不过for循环比较方便
for ue in user:
print(ue)
输出:
张三
李四
王五
['张三的年收入', ['工资收入', '津贴', '来源天上']]

(五)第4 步中可以发现程序只打印了最外层的列表数据, [' 张三的年收入 ', [' 工资收入 ', ' 津贴 ', ' 来源天上 ']] 是作为一个列表输出的,该怎么把内层列表的数据也打印出来呢?

user = ["张三","李四","王五",["张三的年收入",["工资收入","津贴","来源天上"]]]
for ue in user:
#isinstance()是内置函数,此处用来确定数据类型是不是列表
if isinstance(ue,list):
for u in ue:
print(u)
else:
print(ue)

输出:

张三

李四

王五

张三的年收入

['工资收入', '津贴', '来源天上']

(六)第五步中可以发现,第三层的列表还是以列表的形式打印,该怎么处理?再增加一个 if 循环?如果还有更多层呢?为了代码更简洁,这时我们可以使用函数来处理。

函数的格式:

<strong>def </strong>参数名():
    函数代码组

()括号里的参数可选,可以有一个或多个,也可以不设置参数,但是括号必须有。

通过下面的函数我们就可以处理多层嵌套的列表了。

#创建一个用来处理列表的函数
def print_li(the_list):
for ue in the_list:
#判断数据类型是不是列表
if isinstance(ue, list):
print_li(ue)
else:
print(ue)
user = ["张三","李四","王五",["张三的年收入",["工资收入","津贴","来源天上"]]]
#调用函数
print_li(user)

输出:

张三

李四

王五

张三的年收入

工资收入

津贴

来源天上


以上所述就是小编给大家介绍的《Python笔记(二):列表+列表数据处理+函数》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

地理信息系统算法基础

地理信息系统算法基础

张宏、温永宁、刘爱利/国别:中国大陆 / 科学出版社 / 2006-6 / 35.00元

《地理信息系统算法基础》全面、系统地收集和整理了当前地理信息系统算法领域的相关资料,以地理信息系统设计与实现为线索,内容涉及地理空间数据的描述、检索、存储和管理,以及地理空间信息分析基本方法的设计和实现。《地理信息系统算法基础》可作为地理信息系统专业的本科生和研究生教材,也可作为从事地理信息系统软件开发和应用的人员的学习资料,并可供地理信息系统的理论研究人员参考。一起来看看 《地理信息系统算法基础》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换