ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python基础回顾(2)

2022-01-13 21:33:57  阅读:145  来源: 互联网

标签:week 回顾 Python list 元素 基础 列表 索引 print


文章目录


内容介绍

        本节主要讲Python基础知识中的列表,讲解列表的建立以及对列表的一些基础操作。


一、列表是什么?

       Python主要内置类型包括数字、序列、映射、类、实例和异常。其中序列是最基本的数据结构。序列中的每个元素都会被分配到一个数 ,用于表示它的位置,这个数称为索引。一般来说,第一位的索引是0,第二位索引是1,依此类推。

        Python包含6中内置的序列,即列表、元组、字符串、Unicode字符串、buffer对象和 xrange 对象。其中列表、元组和字符串是最常用的序列。

        列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。

        如下所示建立了一个列表week。列表的基本单元是元素,每个元素之间用逗号隔开。   列表的数据项不需要具有相同的类型。

week = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']

     

二、列表的操作

(一)列表的索引

        列表是有序的集合,因此要访问列表的任何元素,只需将该元素的位置或索引告诉Python即可。要访问列表元素,可指出列表的名称,再指出元素的索引,并将其放在方括号内。

# 列表是有序的集合,因此要访问列表的任何元素,只需将该元素的位置或索引告诉Python即可。
# 要访问列表元素,可指出列表的名称,再指出元素的索引,并将其放在方括号内。
week = ['tuesday', 'Wednesday', 'thursday', 'Friday', 'saturday']
print(week)
print(week[3])
print(week[3].title())
# 在Python中,第一个列表元素的索引为0,而不是1。(在Matlab中,第一个索引是1,后者方便于计算实用,注意不要搞混)
# Python提供了一种倒叙读取的方法,如下所示,当索引为“-2”时,指倒着取第2个列表元素。
print(week[-2])
# 列表中的元素可像使用其他变量一样被使用。例如,可以用列表中的元素拼接打印输出。
message = 'Today is '+week[2].title()+' ,tomorrow is '+week[3].title()+ '.'
print(message)

(二)列表元素的增删

        如下代码和图所示,注意这里可以看出“方法”、“函数”和”语句“的区别。

# 1.在列表末尾增加一个元素,可以使用.append()方法
# 用法为  “  列表名.append('元素名')  ”
week.append('Sunday')  # 在列表最末尾插入sunday
print('\n列表末尾增加:')
print(week)
# 2.在列表任意位置插入一个元素,使用.insert()方法可在列表的任何位置添加新元素。为此,你需要指定新元素的索引和值。
# 用法为  “  列表名.insert(索引(数), '元素名')  ”
week.insert(0, 'Monday')  # 在列表最开头插入monday
print('\n列表中间插入:')
print(week)
# 3.删除列表任意位置处的元素,可以使用del语句,使用时要知道需删除元素的索引。
# 用法为  “  del 列表名[需要删除元素的索引]  ”
del week[3]
print('\n列表中间删除:')
print(week)
# 4.有时候需要弹出列表中的某个元素,并且保存下该元素,可以使用pop()方法。
# 用法为   “  a = 列表名.pop(需要弹出的元素索引)  ”这条语句可以将列表中对应索引处的元素弹出并赋值给a,同时列表中删除该元素。
TanChuYuanSu = week.pop(-1)  # 弹出最后一个元素——特别地,如果pop()的括号中什么参数也不给,默认弹出的是最后一个元素。
print('\n列表中删除并弹出:')
print(week)
print('弹出的元素是:', TanChuYuanSu)
# 5.在不知索引只知道元素值的情况下,删除列表中某个元素,可以使用remove()方法
print('\n只知道值,不知道索引的删除:')
BuShangXue = 'saturday'
print('因为不上学,所以去掉', BuShangXue)
week.remove(BuShangXue)
print(week)
# remove()方法一次只能删除第一个指定的值。如果要删除的值可能在列表中出现多次,就需要使用循环来判断是否删除了所有这样的值。

(三)列表的排序、求列表的长度

week = ['Monday', 'tuesday', 'Wednesday', 'thursday', 'Friday', 'saturday', 'Sunday']
week1 = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
number = [1, 23, 4, 5, 1214, 75, 43, 9, 2, 0]
# 1.对列表进行永久性排序,可以使用sort()方法.
print('原始列表:')
print(week)
print(week1, '\n')
week.sort()
print('顺序排列之后的列表:')
print(week)
# 看上去似乎没有按照字母排序,再试试week1
week1.sort()
print(week1, '\n')
# 这里,当所有元素首字母都是大写之后,sort方法成功将其按字母从小到大排列
number.sort()
print(number)
# 也可以用这个方法排列数字
number.sort(reverse=True)
print(number, '\n')
# 如果给sort一个参数“reverse=True”,则可以实现从大到小的逆叙排列。
# 值得注意的是,sort的排列是永久的不可逆的。至于为什么不能正确排列出大小写字母,需要掌握ASCII码的相关知识。
# 2.要保留列表元素原来的排列顺序,同时以特定的顺序呈现它们,可使用函数sorted()。
# 函数sorted()让你能够按特定顺序显示列表元素,同时不影响它们在列表中的原始排列顺序。
week1 = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
print("原始列表:")
print(week1)
print("\n使用sorted()方法进行排序后:")
print(sorted(week1))
print("\n看看原始列表有没有被改变:")
print(week1)
# 如果需要将字母逆序排列,可向函数sorted()传递参数reverse=True。
print("\n逆序排列:")
print(sorted(week1, reverse=True))
# 3.如果需要把列表中的元素倒序排列,可使用reverse()方法。注意,此处倒序排列指的是把列表中第一个元素放到最后一个,以此类推。
week1 = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
print(week1, '\n')
week1.reverse()
print('倒序排列以后:')
print(week1)
# 4.如果想知道列表的长度,可以使用函数len()。
print('列表week1的长度为:', len(week1))


总结

        本次学习了Python最常见的数据类型列表,前文给出了一些具体的针对列表的操作,以及这些操作产生的影响。此处参考网络和书本,给出一个较为全面的总结式概括,以方便后续查找使用。鉴于本人能力有限,欢迎批评指正。

对于列表的操作:

1.Python包含以下函数
cmp(list1, list2)
# 比较两个列表的元素
len(list)
# 列表元素个数
max(list)
# 返回列表元素最大值
min(list)
# 返回列表元素最小值
list(seq)
# 将元组转换为列表

2.Python包含以下方法:
list.append(obj)
# 在列表末尾添加新的对象
list.count(obj)
# 统计某个元素在列表中出现的次数
list.extend(seq)
# 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
list.index(obj)
# 从列表中找出某个值第一个匹配项的索引位置
list.insert(index, obj)
# 将对象插入列表
list.pop([index=-1])
# 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
list.remove(obj)
# 移除列表中某个值的第一个匹配项
list.reverse()
# 反向列表中元素
list.sort(cmp=None, key=None, reverse=False)
# 对原列表进行排序

3.组合与截取:
[a, b, c] + [d, e, f]——>[a, b, c, d, e, f]
# 组合两个列表
['666'] * 6	——>['666', '666', '666', '666', '666', '666']
# 对列表中元素进行重复
3 in [1, 2, 3]——>True
# 判断元素是否存在于列表中,返回布尔值
for x in [1, 2, 3]:
# 让x在列表中依次取值,循环次数为列表的长度
列表名[头下标i:尾下标j:步长k]
list[1:2:66]
# 截取列表中一部分,从第一个数索引所在的元素开始,到第二个数索引所在的元素为止,步长是第三个数
# 这三个数可以缺省,一般有这几种可能:
# 1.只有头下标i和冒号(代表的是从该头下标i的元素开始截取,一直到最后)
# eg:list[1:]表示从第2位开始截取,第2位及之后所有内容被截取出来。
# 2.只有冒号和尾下标j(代表的是从开始一直截取到j-1的元素)
# eg:list[:10]表示从第1位开始,到第9位之间的所有内容被截取出来。
# 3.头下标i,冒号和尾下标j都有(代表的是从i一直截取到j-1的元素)
# eg:list[1:10]表示从第2位开始,到第9位之间的所有内容被截取出来。
# 4.头下标i,冒号,尾下标j,冒号,步长k都有(代表的是从i开始,每k步取一次,一直截取到j-1位)
# eg:list[1:10:2]表示从第2位开始,每2位取一次,一直截取到第9位。即取出第2、4、6、8位。

标签:week,回顾,Python,list,元素,基础,列表,索引,print
来源: https://blog.csdn.net/plant_angry/article/details/122481665

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有