首页 > 编程语言 >Python入门(6)——列表

Python入门(6)——列表

时间:2022-11-25 14:03:00浏览次数:44  
标签:入门 peach Python 元素 list 列表 fruits print


列表的定义


列表是由一系列按特定顺序排列的元素组成。

列表可以包含不同类型的元素。列表内元素的值可以重复。

列表通常用单词名称的复数表示。

列表用方括号 [ ] 表示,元素用 , 隔开。

>>> numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> print(numbers)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> type(numbers)
<class 'list'>
>>> list = [1, 'Hello', True, 12.56]
>>> print(list)
[1, 'Hello', True, 12.56]


获取列表的元素


正向获取列表元素

Python获取列表的元素可以类似看作在C++或Java中获取数组的元素,只需要提供该列表名以及对应的元素索引即可获取相应元素。注意:索引值从0开始,即获取列表元素的索引范围为 0  ~  列表长度-1 。

>>> fruits = ['apple', 'pear', 'peach', 'grape', 'banana', 'pineapple', 'lemon']
>>> print(fruits[1])
pear


逆向获取列表元素

当然,Python还提供了相当方便的获取列表倒数某个元素的写法,即获取倒数第一个元素的索引为 -1 ,获取倒数第二个元素的索引为 -2 ,以此类推,获取列表倒数某个元素的索引范围为  -1  ~  -列表长度 。

>>> fruits = ['apple', 'pear', 'peach', 'grape', 'banana', 'pineapple', 'lemon']
>>> print(fruits[-5])
peach


在列表中查值


使用 index() 方法,可以传入要查找的参数,如果在列表中查出有此值,则返回对应值的索引。如果没有找到,则报ValueError错误。

>>> fruits = ['apple', 'pear', 'peach', 'grape', 'banana', 'pineapple', 'lemon']
>>> fruits.index('grape')
3
>>> fruits.index('people')
Traceback (most recent call last):
File "<pyshell#12>", line 1, in <module>
fruits.index('people')
ValueError: 'people' is not in list


往列表中添加元素


在列表末尾添加元素

想要直接在列表末尾添加元素,可以直接使用 append() 方法,将要插入到列表尾的元素作为参数传给此方法。

>>> list1 = ['abc', 'edf']
>>> list1.append('ghi')
>>> print(list1)
['abc', 'edf', 'ghi']


在列表中的某个位置添加元素

想要在列表的特定位置添加元素,可以使用 insert() 方法,此方法有两个参数,第一个参数为要插入元素的索引值(从0开始),第二个参数给出要插入的元素值。

>>> list2 = [123, 456]
>>> list2.insert(1,789)
>>> print(list2)
[123, 789, 456]


修改列表中的元素


修改列表元素的方法跟取列表中元素的方法类似,只要给出列表名以及索引,用赋值语句对其进行修改就行。

>>> list3 = [11, 22, 33, 44]
>>> list3[1] = 99
>>> print(list3)
[11, 99, 33, 44]
>>> list3[-2] = 0
>>> print(list3)
[11, 99, 0, 44]


删除列表中的元素


删除列表中特定位置的元素

使用 del 语句,可以删除列表中特定位置的元素。

>>> list4 = [11, 22, 33, 44, 55]
>>> del list4[2]
>>> print(list4)
[11, 22, 44, 55]
>>> del list4[-1]
>>> print(list4)
[11, 22, 44]


删除列表中最后一个元素并返回其值

使用 pop() 方法,可以将列表最后一个元素弹出,并取得元素的值。

>>> list5 = [10, 11, 12, 13, 14, 15]
>>> x = list5.pop()
>>> print(x)
15
>>> print(list5)
[10, 11, 12, 13, 14]


删除列表中任何一个元素并返回其值

使用 pop() 方法并代入索引值作为其参数,可以将列表某个位置上的元素弹出,并取得元素的值。

>>> list6 = ['a', 'b', 'c', 'd']
>>> y = list6.pop(2)
>>> print(y)
c
>>> print(list6)
['a', 'b', 'd']


删除列表中第一次出现的指定元素

使用 remove() 方法,传入元素的值作为参数,即可将列表中第一次出现的该元素删除。

>>> list7 = [1, 2, 3, 4, 2, 3]
>>> list7.remove(2)
>>> print(list7)
[1, 3, 4, 2, 3]


删除列表中所有指定元素

使用while循环搭配 remove() 方法,可以删除列表中所有指定元素。

>>> list7 = [1, 2, 3, 4, 2, 3]
>>> while 2 in list7:
list7.remove(2)
>>> print(list7)
[1, 3, 4, 3]


删除列表的所有元素

使用 clear() 方法,即可将列表的所有元素删除。

>>> list8 = [1, 2, 3]
>>> list8.clear()
>>> print(list8)
[]


删除列表中指定范围内的元素

使用 del 删除列表一段连续的元素,方法跟字符串切片类似。

>>> list9 = [20, 21, 22, 23, 24, 25, 26]
>>> del list9[1:4]
>>> print(list9)
[20, 24, 25, 26]


列表连接


列表连接与字符串连接类似,使用+号即可。下面的例子演示了如何将两个列表连接到一起。

>>> list9 = [1, 2, 3]
>>> list9 = list9 + ['a', 'b', 'c']
>>> print(list9)
[1, 2, 3, 'a', 'b', 'c']


列表排序


永久排序

使用 sort() 方法,可以对列表进行排序,使用此方法后,列表就是已经排完序的了,不可恢复原排序。默认排序是按升序,即字母按a~z进行排序。

>>> fruits = ['apple', 'pear', 'peach', 'grape', 'banana', 'pineapple', 'lemon']
>>> fruits.sort()
>>> print(fruits)
['apple', 'banana', 'grape', 'lemon', 'peach', 'pear', 'pineapple']


如果想要让列表进行逆序排序,可以在 sort() 方法中加入参数 reverse=True 。

>>> fruits = ['apple', 'pear', 'peach', 'grape', 'banana', 'pineapple', 'lemon']
>>> fruits.sort(reverse=True)
>>> print(fruits)
['pineapple', 'pear', 'peach', 'lemon', 'grape', 'banana', 'apple']


临时排序

使用 sorted() 方法,可以对列表进行临时排序,使用此方法后,列表还是原排序。

>>> fruits = ['apple', 'pear', 'peach', 'grape', 'banana', 'pineapple', 'lemon']
>>> print(sorted(fruits))
['apple', 'banana', 'grape', 'lemon', 'peach', 'pear', 'pineapple']
>>> print(fruits)
['apple', 'pear', 'peach', 'grape', 'banana', 'pineapple', 'lemon']


随机排序

使用Python的random模块函数shuffle(),可以对列表进行随机排序,此排序的结果是永久的。

>>> import random
>>> fruits = ['apple', 'pear', 'peach', 'grape', 'banana', 'pineapple', 'lemon']
>>> print(fruits)
['apple', 'pear', 'peach', 'grape', 'banana', 'pineapple', 'lemon']
>>> random.shuffle(fruits)
>>> print(fruits)
['pineapple', 'banana', 'lemon', 'apple', 'pear', 'peach', 'grape']


列表反转


使用 reverse() 方法,可以对列表进行反转。

>>> list10 = [2, 5, 9, 6, 3]
>>> list10.reverse()
>>> print(list10)
[3, 6, 9, 5, 2]


获取列表长度


使用 len() 方法,可以获取列表的长度。

>>> fruits = ['apple', 'pear', 'peach', 'grape', 'banana', 'pineapple', 'lemon']
>>> len(fruits)
7


遍历列表


使用 for 循环,可以遍历整个列表。

>>> citys = ['Beijing', 'Shenzhen', 'Shanghai']
>>> for city in citys:
print(city)




Beijing
Shenzhen
Shanghai


创建数值列表


要创建数值列表,我们可以使用函数 list() 将 range() 的结果直接转换为列表。下面的例子演示了如何创建一个包含数值5~10的数值列表。

"""
创建一个包含数值5~10的数值列表
Version: 1.0
Author: Caizi
"""
numList = list(range(5, 11))
print(numList)


对数值列表进行简单的统计计算


Python中有专门处理数值列表的内置函数,我们可以直接调用这些函数统计数值列表的信息。下面的例子演示了求出数值列表的最大值、最小值和总和。

"""
求出数值列表的最大值、最小值和总和
Version: 1.0
Author: Caizi
"""
numList = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print(min(numList))
print(max(numList))
print(sum(numList))


使用列表解析创建列表


Python中可以在创建列表的时候使用列表解析自动创建列表。下面的例子演示了如何创建一个平方数列表。

"""
创建平方数列表
Version: 1.0
Author: Caizi
"""
squares = [x**2 for x in range(1, 11)]
print(squares)


获取子列表


获取子列表我们使用列表切片方式,列表切片和字符串切片类似,只需要指定切片范围即可。下面的例子演示了对列表的切片操作。

"""
列表的切片操作
Version: 1.0
Author: Caizi
"""
squares = [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
print(squares[3:6])


遍历子列表


我们可以直接在for循环使用列表切片,即可遍历列表的部分元素。下面的例子演示了遍历列表前5个数。

"""
遍历列表前5个数
Version: 1.0
Author: Caizi
"""
squares = [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
for square in squares[:5]:
print(square)


复制列表


在Python中复制列表,我们可以使用列表切片操作,直接把整个列表切下来做为另一个新列表,完成列表的复制。下面的例子演示了如何使用切片操作复制列表。

"""
复制列表
Version: 1.0
Author: Caizi
"""
squares = [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
list = squares[:]
print(list)
list = list * 2
print(list)

注意:在Python复制列表,千万不能使用赋值运算符直接把旧列表赋值给新列表,因为在Python中,赋值运算符赋的是对象的id值,所以使用下面例子的方法直接赋值,它们id值一样,即都指向同一个对象,也就是说你只是取了该对象的一个别名而已,并没有新建新列表。

"""
错误的复制列表方法
Version: 1.0
Author: Caizi
"""
squares = [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
list = squares
print(id(squares))
print(id(list))
print(list)


检查元素是否在列表中


在Python中,检查元素是否在列表中可以使用in和not in操作符。下面的例子演示了如何检查元素是否在列表中。

"""
检查元素是否在列表中
Version: 1.0
Author: Caizi
"""
list = [1, 2, 3, 4, 5]
print(1 in list) # True
print(6 in list) # False


列表的多重赋值操作


列表多重赋值即用列表中的值为多个变量赋值。多重赋值技巧在Python中很常用到,下面的例子演示了数据的多重赋值和列表的多重赋值。

"""
多重赋值
Version: 1.0
Author: Caizi
"""
# 数据的多重赋值
a, b, c = 10, 20, 30
print(f'a = {a}') # a = 10
print(f'b = {b}') # b = 20
print(f'c = {c}') # c = 30
# 列表的多重赋值
student = [1001, 'boy', 18]
id, sex, age = student
print(f'id: {id}') # id: 1001
print(f'sex: {sex}') # sex: boy
print(f'age: {age}') # age: 18


同时获取列表的索引和对应的值


在Python中可以调用 enumerate() 函数,此函数返回两个值,一个是表项的索引和表项的本身。下面的例子演示了如何同时取得列表的索引和此索引上的值。

"""
获取列表索引及其对应的值
Version: 1.0
Author: Caizi
"""
fruits = ['apple', 'peach', 'banana', 'lemon']
for index, item in enumerate(fruits):
print(f'index {index} in fruits is: {item}')



标签:入门,peach,Python,元素,list,列表,fruits,print
From: https://blog.51cto.com/u_15891283/5886633

相关文章

  • Python入门(3)——基本数据类型及运算符
    常见的几种基本数据类型python是弱类型语言,相对于强类型语言,它不需要声明变量的类型。在Python中一切都是对象。可以使用id()函数查看此对象的id。Python中的数据类型很多,而......
  • Python入门(4)——最全的字符串操作
    修改字符串大小写title():把字符串中每个单词首字母改为大写。upper():把字符串中所有字符改为大写。lower():把字符串中所有字符改为小写。>>>'theintroductiontopython'.......
  • Python入门(2)——变量与常量
    IDLE-Python集成开发环境刚开始学习Python,我们可以直接使用Python自带的IDE——IDLE进行编程。在Windows开始菜单中,搜索IDLE,打开即可进行Python编程。接下来一段时间,我们先......
  • Python入门(1)——搭建环境
    Life is short,you need Python.--BruceEckel​“人生苦短,我用Python”Python由荷兰数学和计算机科学研究学会的GuidovanRossum于1990 年代初设计。因其简单易学,如......
  • Python 太难懂?火山引擎数智平台这款产品可以了解一下!
     更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群  「自学Python?一般人我还是劝你算了吧!」在国内知识分享平台「知......
  • ubuntu/usr/bin/env:python:没有这样的文件或目录
    /usr/bin/env:‘python’:Nosuchfileordirectory可能的解决方案#1如果未安装Python3,请安装它:apt-getinstallpython3可能的解决方案#2如果已安装Pyth......
  • Python给PDF文件打水印
    坑啊.....PHP实现不了才出此下策:首先声明使用Python2.7版本!!! Python2.7版本! Python2.7版本! Python2.7版本!重要的事情说三遍!说三遍!说三遍!安装包:pip2installp......
  • 想靠Python制作报表?入门不易精通难!还是这个工具操作简单
    Python有多火热,不需要我罗列具体的数据,仅大家回想下见过多少广告就知道。Python最初是由数据分析带起来的,号称自动化办公,表格处理,数据分析,图表制作吸引了一大波人。不过等真......
  • Python爬取7天天气并绘制折线图
    Python爬取7天天气需要的包requestsBeautifulSoupopenpyxl安装包安装命令pipinstall[包名]代码演示第一部分:爬取文件,写入excel表格#爬虫获取天气#导......
  • tmux从入门到装x
    原文:https://blog.csdn.net/CSSDCC/article/details/121231906安装方法:#Ubuntu或Debian$sudoapt-getinstalltmux #CentOS$sudoyuminstalltmux启动与......