目录

一、列表

  • 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中的列表相关推荐

  1. 逗号分隔的字符串转换为Python中的列表 split

    将逗号分隔的字符串转换为Python中的列表 给定一个字符串: 它是由逗号分隔的几个值的序列: mStr = '192.168.1.1,192.168.1.2,192.168.1.3' 如何将字符串转 ...

  2. python中创建列表[]和list()哪个效率快?为什么快?快多少呢?

    python中创建列表的两种方式: # 方法一:使用成对的方括号语法 list_a = []# 方法二:使用内置的 list() list_b = list() 1. [] 是 list() 的三-四 ...

  3. 这12种方法轻松合并Python中的列表

    我喜欢12这个数字,因为有太多的事情与12有关.一年有12个月;古代用12个时辰(地支)表示一天的时间.用一纪表示12年;希腊有12主神;黄道有12宫;撒迦利亚.西琴先生的<地球编年史>中 ...

  4. 从python中的列表中获取唯一值[重复]

    本文翻译自:Get unique values from a list in python [duplicate] This question already has an answer here: ...

  5. 如何在Python中反转列表?

    如何在Python中执行以下操作? array = [0, 10, 20, 40] for (i = array.length() - 1; i >= 0; i--) 我需要一个数组的元素,但是 ...

  6. python中的列表和元组_python中列表和元组的区别

    如果有了解过python中的列表和元组,你可能会知道相对于列表,元组是不可变的,也就是说元组中的数据不能随意更改.除了列表是用中括号表示而元组是用小括号表示之外,这两种数据类型好像并没有什么不同,都是 ...

  7. python随机抽签列表中的同学值日_神奇的大抽签--Python中的列表_章节测验,期末考试,慕课答案查询公众号...

    神奇的大抽签--Python中的列表_章节测验,期末考试,慕课答案查询公众号 更多相关问题 下图表示几个植物类群的进化关系.下列叙述不正确的是[ ]A.最先出现的植物类群是甲B.乙和丙都是由甲进化来的 ...

  8. python3 列表长度_3种在Python中查找列表长度的简便方法

    python3 列表长度 In this article, we will be unveiling techniques to find the length of a Python list. F ...

  9. python遍历是什么意思_在Python中遍历列表的方法有哪些

    Python中遍历列表有以下几种方法: 一.for循环遍历lists = ["m1", 1900, "m2", 2000] for item in lists: ...

  10. python中result的用法_关于Python中的列表理解及用法

    在Python中,列表理解通常用于编写单行语句,这些语句通过可迭代对象进行迭代以创建新的列表或字典.本文首先介绍for循环如何在Python中工作,然后解释如何在Python中使用列表理解. Pyth ...

最新文章

  1. mysql让数据库的数据按照id来排序方法
  2. android 利用类的同名方法欺骗jni调用(一)
  3. Dephi7程序设计与开发技术大全(求是科技)
  4. 4000字,25张精美交互图表,开启Plotly Express之旅!
  5. 【Linux】vi编辑器命令
  6. uc3842改可调电源教程_明纬开关电源改可调详细教程
  7. 最重要的7个Drupal内核模板文件
  8. 荣耀赵明反讽雷军:有些话不适合知识分子讲
  9. python如何让进程运行在指定的cpu上_java程序可以实现在指定CPU上运行吗?
  10. mysql 每日新增表分区
  11. quick time不可用_教程|用Selenium爬资源:DIY还是花钱?
  12. win10系统中如何把自带的IE11降级回IE8?
  13. python爬虫qq音乐_Python爬虫实战:采集全部QQ音乐歌曲
  14. 【数据库考试】数据库期末考试试题及答案
  15. 关于RabbitMQ启动慢问题的解决方法
  16. 计算机中常用的数学知识
  17. windows无法格式化u盘_Windows系统提示U盘无法完成格式化的解决方法
  18. [Android]进程通信Andromeda框架
  19. Gerrit添加Verified
  20. JDK自带的反编译工具 javap

热门文章

  1. 日常之卸载奇安信相关~
  2. GKFX捷凯金融外汇官网:gkfx-cn com 投资之父的15条投资法则
  3. mac 修改本地数据库密码 忘记密码
  4. 再访《Scratch少儿趣味编程》系列图书作者阿部和广、仓本大资
  5. 【.csv数据预处理实战】pandas 驾驶参数选取
  6. E450连接蓝牙耳机
  7. HTML作业-花店网页
  8. 问题解决:opencv imwrite图片保存为黑色
  9. 推荐几款视频声音变声软件给大家
  10. Landscape Photography: Winter 风景摄影:冬天 Lynda课程中文字幕