首页 > 编程语言 >Python 列表操作指南2

Python 列表操作指南2

时间:2023-10-03 20:34:41浏览次数:47  
标签:指南 apple 示例 Python cherry 列表 thislist banana

将元组的元素添加到列表中:

thislist = ["apple", "banana", "cherry"]
thistuple = ("kiwi", "orange")
thislist.extend(thistuple)
print(thislist)

remove() 方法用于移除指定的项目。

示例,移除 "banana":

thislist = ["apple", "banana", "cherry"]
thislist.remove("banana")
print(thislist)

如果存在多个具有指定值的项目,则 remove() 方法将删除第一个出现的项目:

示例,移除第一个出现的 "banana":

thislist = ["apple", "banana", "cherry", "banana", "kiwi"]
thislist.remove("banana")
print(thislist)

pop() 方法用于移除指定的索引。

示例,移除第二个项目:

thislist = ["apple", "banana", "cherry"]
thislist.pop(1)
print(thislist)

如果不指定索引,pop() 方法将移除最后一个项目。

示例,移除最后一个项目:

thislist = ["apple", "banana", "cherry"]
thislist.pop()
print(thislist)

使用 del 关键字也可以移除指定的索引:

示例,移除第一个项目:

thislist = ["apple", "banana", "cherry"]
del thislist[0]
print(thislist)

del 关键字还可以完全删除列表。

示例,删除整个列表:

thislist = ["apple", "banana", "cherry"]
del thislist

clear() 方法用于清空列表。列表仍然存在,但没有内容。

示例,清空列表内容:

thislist = ["apple", "banana", "cherry"]
thislist.clear()
print(thislist)

通过列表进行循环,您可以使用 for 循环遍历列表项:

示例,逐个打印列表中的所有项目:

thislist = ["apple", "banana", "cherry"]
for x in thislist:
  print(x)

您还可以通过引用它们的索引编号来遍历列表项。使用 range() 和 len() 函数创建一个合适的可迭代对象。

示例,通过引用它们的索引编号打印所有项目:

thislist = ["apple", "banana", "cherry"]
for i in range(len(thislist)):
  print(thislist[i])

上面示例中创建的可迭代对象是 [0, 1, 2]。您可以使用 while 循环遍历列表项。使用 len() 函数来确定列表的长度,然后从 0 开始,通过引用它们的索引遍历列表项。记得在每次迭代后将索引增加 1。

示例,使用 while 循环打印所有项目,通过遍历所有索引编号:

thislist = ["apple", "banana", "cherry"]
i = 0
while i < len(thislist):
  print(thislist[i])
  i = i + 1

列表推导式在您想要基于现有列表的值创建新列表时提供了更短的语法。

示例:假设有一个水果列表,您想要一个新列表,其中仅包含名称中带有字母 "a" 的水果。

如果不使用列表推导式,您将不得不编写一个带有条件测试的 for 语句:

fruits = ["apple", "banana", "cherry", "kiwi", "mango"]
newlist = []

for x in fruits:
  if "a" in x:
    newlist.append(x)

print(newlist)

使用列表推导式,您只需要一行代码就可以完成所有操作:

fruits = ["apple", "banana", "cherry", "kiwi", "mango"]

newlist = [x for x in fruits if "a" in x]

print(newlist)

语法

newlist = [expression for item in iterable if condition == True]

返回值是一个新列表,不会改变旧列表。条件就像一个筛选器,只接受计算结果为 True 的项目。

示例,仅接受不是 "apple" 的项目:

newlist = [x for x in fruits if x != "apple"]

条件 if x != "apple" 会对除了 "apple" 之外的所有元素返回 True,使新列表包含除 "apple" 之外的所有水果。条件是可选的,可以省略:

示例,没有 if 语句:

newlist = [x for x in fruits]

可迭代对象可以是任何可迭代的对象,如列表、元组、集合等。

示例,您可以使用 range() 函数创建一个可迭代对象:

newlist = [x for x in range(10)]

同样的示例,但带有条件:

示例,只接受小于 5 的数字:

newlist = [x for x in range(10) if x < 5]

表达式是迭代中的当前项目,但它也是结果,您可以在最终成为新列表中的列表项之前对其进行操作:

示例,将新列表中的值设置为大写:

newlist = [x.upper() for x in fruits]

您可以将结果设置为您喜欢的任何内容:

最后

为了方便其他设备和平台的小伙伴观看往期文章,链接奉上:

公众号搜索Let us Coding知乎开源中国CSDN思否掘金InfoQ简书博客园慕课51CTOhelloworld腾讯开发者社区阿里开发者社区

看完如果觉得有帮助,欢迎点赞、收藏关注

标签:指南,apple,示例,Python,cherry,列表,thislist,banana
From: https://www.cnblogs.com/xiaowange/p/17741606.html

相关文章

  • python3 番外篇之pyenv安装python遇到的ssl问题
    最近在学爬虫,在Linux中通过pyenv安装3.9.10,安装时也没有问题,问题就出在安装完requests模块后,引用requests模块报错。(reptile)root@localhost:/data/reptile#pythonPython3.9.10(main,Aug102023,01:32:05)[GCC7.3.0]onlinuxType"help","copyright","credits"......
  • 第03章 Python的数据结构、函数和文件
    本章讨论Python的内置功能,这些功能本书会用到很多。虽然扩展库,比如pandas和Numpy,使处理大数据集很方便,但它们是和Python的内置数据处理工具一同使用的。我们会从Python最基础的数据结构开始:元组、列表、字典和集合。然后会讨论创建你自己的、可重复使用的Python函数。最后,会学习P......
  • 第02章 Python语法基础,IPython和Jupyter Notebooks
    第2章Python语法基础,IPython和JupyterNotebooks当我在2011年和2012年写作本书的第一版时,可用的学习Python数据分析的资源很少。这部分上是一个鸡和蛋的问题:我们现在使用的库,比如pandas、scikit-learn和statsmodels,那时相对来说并不成熟。2017年,数据科学、数据分析和机器学习的......
  • Python类的内置成员方法 __init__, __new__ 和 __call__
    __init__和__new__这个方法想必大家平常也用的很多,这个方法负责对象的初始化。什么是初始化呢?就是对已经存在的东西赋若干个初始值。所以我们可以知道当我们调用__init__()方法的时候,这个类已经被实例化了。我们可以运行一下如下代码classA():def__new__(cls,*ar......
  • 自定义表单设计之三-表单列表实现
    代码实现-表单列表<htmlxmlns="http://www.w3.org/1999/xhtml"><headrunat="server"><title>表单列表</title></head><body><formid="formList"runat="server"><divalign=&......
  • 【VMware篇】1-VMware vCenter系统版本升级指南
    一、前言VMware 2023年6月22日发布了5个安全公告,有4个高危及以上漏洞(CVE-2023-20892、CVE-2023-20893、CVE-2023-20894、CVE-2023020895),漏洞主要存在于DCERPC协议的实现,漏洞影响较大,需要客户着重关注。当前官方已发布最新版本,建议受影响的用户及时更新升级到最新版本。链接如下:ht......
  • python基本数据类型之布尔类型
    所有数据都自己的布尔值零值:所有数据都有且仅有一个值的bool值为FLASE,该值为此类型的零值。整型和浮点型数据除了0,布尔值为FLASE,其它全是TRUE。(0为整型和浮点型的零值)字符串、列表、字典除了容器中为空,其布尔值为FLASE,其它全为TRUE。("",[],{}分别为字符串、列表、字典的零值)p......
  • 笨办法学Python3 习题16 读写文件
    知识点:a_txt=open(file_a)         #默认只读模式打开文件file_a,赋值变量a_txt,后面好执行读取命令b_txt=open(file_b,"w")      #以write写入模式打开文件file_b,赋值变量b_txt//还有"r"只取模式,"a"追加模式a_txt_r=a_txt.rea......
  • LangChain大模型应用开发指南-传统编程范式思维的应用
    LangChain大模型应用开发指南-传统编程范式思维的应用上节课,我带领小伙伴们完成了baichuan2量化模型的OpenAI标准接口封装,并完成LangChain对大模型的调用与测试。没有看过的小伙伴可以点击链接查看:AI课程合集今天我们将正式开始LangChain大模型应用开发课程。组件总览上图......
  • LangChain大模型应用开发指南-AI大模型衍生的新能力
    LangChain大模型应用开发指南-AI大模型衍生的新能力上节课,我以传统应用编程设计模式和思维为入口和对比对象,介绍了LangcChain中的Chain、Agent、Callback三大核心概念,并整理了LangcChain为众多开发者内置的能力与工具。没有看过的小伙伴可以点击链接查看:大模型OpenAI标准接口封......