python中的列表
目录
一、列表
- 1.列表
- 2.访问列表元素
- 3.使用列表中的值
二、增或删列表中的值
- 1.修改列表元素
- 2.添加列表元素
- 3.删除列表元素
三、组织列表
- 1.方法sort( )对列表永久排序
- 2.函数sorted( )对列表临时排序
- 3.倒着打印列表
- 4.确定列表的长度
四、避免列表的索引错误(IndexError)
一、列表
1.列表
列表是有序集合,由一系列按照特定顺序排列的元素组成。通常包括许多元素,故常给列表指定一个复数的名称。用方括号[ ]表示列表,用逗号,分隔其中的元素。python将打印其内部元素,包括方括号[],不太干净整洁的输出
fruits=['apple','orange','watermelon','tomato','banana']
print(fruits)
['apple', 'orange', 'watermelon', 'tomato', 'banana']
2.访问列表元素
因列表有序,故只需把索引(该元素的位置)告诉python,就可访问列表元素。首先指出列表的名称,再把元素的索引放到[ ]内。python只返回元素,不包括方括号。干净整洁的输出!还可加方法
索引是从0开始,而非1,故可将其位置减1作为索引。列表的最后一个元素可以将索引指定为-1,索引-2可以返回列表的倒数第2个元素,可以在不知道列表长度的情况下访问最后的元素。
fruits=['apple','orange','watermelon','tomato','banana']
print(fruits[0])
print(fruits[-1])
print(fruits[0].title())
apple
banana
Apple
3.使用列表中的值
可以像使用其他变量一样使用列表中的各个值。如利用f字符串。
fruits=['apple','orange','watermelon','tomato','banana']
message=f'My favorite fruite is {fruits[0]}.'
print(message)
My favorite fruite is apple.
二、增或删列表中的值
在设计一款射杀外星人游戏时,需在开始时将一些外星人存储于列表中,当有外星人击杀时,需在列表中删除,新的外星人出现时,需在列表中添加,游戏运行期间,列表长度在不断变化。
1.修改列表元素
与访问列表元素方式大致一致,先指定列表名和要修改的元素的索引,再指定该元素的新值。关联
fruits=['apple','orange','watermelon','tomato','banana']
print(fruits)
fruits[0]='pitaya'
print(fruits)
['apple', 'orange', 'watermelon', 'tomato', 'banana']
['pitaya', 'orange', 'watermelon', 'tomato', 'banana']
2.添加列表元素
1、在列表中添加元素最简单的方式是附加,即在列表末尾添加元素,运用方法append()
运用在字符串中的方法title、upper、lower中是可直接print,但列表中的方法需先直接对变量方法。方法(字符串?列表?)、函数(sorted len 可直接用于打印中)、语句(del)的用法都不一样。
fruits=['apple','orange','watermelon','tomato']
print(fruits)
fruits.append('pitaya')
print(fruits)
['apple', 'orange', 'watermelon', 'tomato']
['apple', 'orange', 'watermelon', 'tomato', 'pitaya']
为控制用户,可先创一个空列表,再依据用户提供的新值附加到列表中。
fruits=[]
fruits.append('apple')
fruits.append('orange')
fruits.append('watermelon')
print(fruits)
['apple', 'orange', 'watermelon']
2、在列表中插入元素,运用方法insert( ),需指定新元素的索引和值
fruits=['orange','watermelon','tomata']
print(fruits)
fruits.insert(0,'apple')
print(fruits)
['orange', 'watermelon', 'tomata']
['apple', 'orange', 'watermelon', 'tomata']
3.删除列表元素
1、若知道要删除元素的位置,可用del语句。使用del语句删除列表中的值后,将无法再访问
fruits=['apple','orange','watermelon','tomato']
print(fruits)
del fruits[0]
print(fruits)
['apple', 'orange', 'watermelon', 'tomato']
['orange', 'watermelon', 'tomato']
2、若想删除列表末尾的元素,且要接着使用它的值,可用方法pop( ),术语弹出(pop)源自这样的类比:列表就像一个栈,删除列表末尾的元素相当于弹出栈顶元素。
fruits=['apple','orange','watermelon','tomato']
print(fruits)
popped_fruits=fruits.pop() #从列表中弹出一个值,并赋给变量popped_fruits
#也可直接fruits.pop(),但无法返回删除值
print(fruits) #打印列表核实删除了一个值
print(popped_fruits) #打印弹出的值,证明依旧能访问被删除的值
['apple', 'orange', 'watermelon', 'tomato']
['apple', 'orange', 'watermelon']
tomato
作用:假设列表中的水果是按时间买的,用方法pop打印一条信息,可指出最后购买的是哪种水果
fruits=['apple','orange','watermelon','tomato']
last_own=fruits.pop()
print(f'The last fruit I owned is a {last_own.title()}.')
The last fruit I owned is a Tomato.
3.弹出列表中的任意元素
使用方法pop( ),在( )中加入索引,注:使用pop时,被弹出的元素就不在列表中了。是使用pop语句还是del方法,del方法——从列表中删除元素,且不再使用它;pop方法——删除元素还能继续使用。
fruits=['apple','orange','watermelon','tomato']
first_owned=fruits.pop(0) #从列表中弹出值,并赋给另一个变量
print(fruits) #检验列表是否弹出元素
print(f'The first fruit I owned is a {first_owned.title()}') #运用已弹出的元素
['orange', 'watermelon', 'tomato']
The first fruit I owned is a Apple
4.依据值删除列表元素
有时不知道要删除元素的索引,知道要删除元素的值,可用方法remove( ),使用remove( )从列表中删除元素时,也可接着使用它的值。 注意:方法remove( )只删除第一个指定值,若删除的值可能在列表中出现多次,需使用循环来确保将每个值都删除。
fruits=['apple','orange','watermelon','tomato']
bad_fruit='apple' #先把apple赋值给另一个变量
fruits.remove('apple') #从列表中移除值为apple的元素
print(fruits) #打印列表,查看是否已移除
print(f'The bad fruit is a {bad_fruit.title()}.') #运用已移除的元素
['orange', 'watermelon', 'tomato']
The bad fruit is a Apple.
三、组织列表
在创建的列表中,元素的而排列顺序常无法预测,并非总能控制用户提供的数据。同时,经常需要按特定的顺序呈现信息,有时又需要调整顺序。这就要组织列表啦。
1.方法sort( )对列表永久排序
方法sort( )是按照字母顺序排列,是永久性修改。向方法sort( )传递参数reverse=Ture可按字母顺序相反的顺序排列,即方法sort(reverse=Ture)。注:Ture首字母要大写
meat=['pork','beef','mutton','chicken']
meat.sort()
print(meat)meat.sort(reverse=True)
print(meat)
['beef', 'chicken', 'mutton', 'pork']
['pork', 'mutton', 'chicken', 'beef']
2.函数sorted( )对列表临时排序
要保留列表原来的排列顺序,同时以特定的顺序显现,可用函数sorted( )。
meats=['pork','beef','mutton','chicken']
print(meats)
print(sorted(meats))
print(meats)
['pork', 'beef', 'mutton', 'chicken']
['beef', 'chicken', 'mutton', 'pork']
['pork', 'beef', 'mutton', 'chicken']
注:并非所有值都是小写,故排列顺序时会有多种解读大小写的方式,要指定准确的排列顺序。
3.倒着打印列表
用方法reverse( )按相反的顺序排列元素,注意不是按与字母顺序相反的顺序排列,只是反转列表
meats=['pork','beef','mutton','chicken']
print(meats)
meats.reverse()
print(meats)
['pork', 'beef', 'mutton', 'chicken']
['chicken', 'mutton', 'beef', 'pork']
4.确定列表的长度
使用函数len( )可快速获得列表长度,计算列表元素时从1开始,不会遇到差1的情况。
meats=['pork','beef','mutton','chicken']
print(len(meats))
4
四、避免列表的索引错误(IndexError)
索引错误意味着python在索引处找不到元素,注意索引时从0开始的,访问最后一个元素时可用索引-1,发生索引错误找不到办法时,可将列表或长度打印出来,找到这种逻辑错误。
meats=['pork','beef','mutton','chicken']
print(meats[4])
File "F:\python_work\chapter_3\meats.py", line 22, in <module>print(meats[4])
IndexError: list index out of range
方法:可对原先的内容直接改,所以不需要赋给新的变量再打印
函数(sorted临时的)不会直接影响到原先的数据,需赋给新的变量/或者将函数放入print中。
python中的列表相关推荐
- 逗号分隔的字符串转换为Python中的列表 split
将逗号分隔的字符串转换为Python中的列表 给定一个字符串: 它是由逗号分隔的几个值的序列: mStr = '192.168.1.1,192.168.1.2,192.168.1.3' 如何将字符串转 ...
- python中创建列表[]和list()哪个效率快?为什么快?快多少呢?
python中创建列表的两种方式: # 方法一:使用成对的方括号语法 list_a = []# 方法二:使用内置的 list() list_b = list() 1. [] 是 list() 的三-四 ...
- 这12种方法轻松合并Python中的列表
我喜欢12这个数字,因为有太多的事情与12有关.一年有12个月;古代用12个时辰(地支)表示一天的时间.用一纪表示12年;希腊有12主神;黄道有12宫;撒迦利亚.西琴先生的<地球编年史>中 ...
- 从python中的列表中获取唯一值[重复]
本文翻译自:Get unique values from a list in python [duplicate] This question already has an answer here: ...
- 如何在Python中反转列表?
如何在Python中执行以下操作? array = [0, 10, 20, 40] for (i = array.length() - 1; i >= 0; i--) 我需要一个数组的元素,但是 ...
- python中的列表和元组_python中列表和元组的区别
如果有了解过python中的列表和元组,你可能会知道相对于列表,元组是不可变的,也就是说元组中的数据不能随意更改.除了列表是用中括号表示而元组是用小括号表示之外,这两种数据类型好像并没有什么不同,都是 ...
- python随机抽签列表中的同学值日_神奇的大抽签--Python中的列表_章节测验,期末考试,慕课答案查询公众号...
神奇的大抽签--Python中的列表_章节测验,期末考试,慕课答案查询公众号 更多相关问题 下图表示几个植物类群的进化关系.下列叙述不正确的是[ ]A.最先出现的植物类群是甲B.乙和丙都是由甲进化来的 ...
- python3 列表长度_3种在Python中查找列表长度的简便方法
python3 列表长度 In this article, we will be unveiling techniques to find the length of a Python list. F ...
- python遍历是什么意思_在Python中遍历列表的方法有哪些
Python中遍历列表有以下几种方法: 一.for循环遍历lists = ["m1", 1900, "m2", 2000] for item in lists: ...
- python中result的用法_关于Python中的列表理解及用法
在Python中,列表理解通常用于编写单行语句,这些语句通过可迭代对象进行迭代以创建新的列表或字典.本文首先介绍for循环如何在Python中工作,然后解释如何在Python中使用列表理解. Pyth ...
最新文章
- mysql让数据库的数据按照id来排序方法
- android 利用类的同名方法欺骗jni调用(一)
- Dephi7程序设计与开发技术大全(求是科技)
- 4000字,25张精美交互图表,开启Plotly Express之旅!
- 【Linux】vi编辑器命令
- uc3842改可调电源教程_明纬开关电源改可调详细教程
- 最重要的7个Drupal内核模板文件
- 荣耀赵明反讽雷军:有些话不适合知识分子讲
- python如何让进程运行在指定的cpu上_java程序可以实现在指定CPU上运行吗?
- mysql 每日新增表分区
- quick time不可用_教程|用Selenium爬资源:DIY还是花钱?
- win10系统中如何把自带的IE11降级回IE8?
- python爬虫qq音乐_Python爬虫实战:采集全部QQ音乐歌曲
- 【数据库考试】数据库期末考试试题及答案
- 关于RabbitMQ启动慢问题的解决方法
- 计算机中常用的数学知识
- windows无法格式化u盘_Windows系统提示U盘无法完成格式化的解决方法
- [Android]进程通信Andromeda框架
- Gerrit添加Verified
- JDK自带的反编译工具 javap