列表(列表是什么)

你将学习列表是什么以及如何使用列表元素。列表让你能够在一个地方存储成组的信息,其中可以只包含几个元素,也可以包含数百万个元素。

列表是新手可直接使用的最强大的Python功能之一,它融合了众多重要的编程概念。

列表是什么

列表 由一系列按特定顺序排列的元素组成。你可以创建包含字母表中所有字母、数字0~9或所有家庭成员姓名的列表;也可以将任何东西加入列表中,其中的元素之间可以没有

任何关系。鉴于列表通常包含多个元素,给列表指定一个表示复数的名称(如letters 、digits 或names )是个不错的主意。

在Python中,用方括号([] )来表示列表,并用逗号来分隔其中的元素。下面是一个简单的列表示例,这个列表包含几种自行车:

复制代码
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
print(bicycles)

访问列表元素

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

例如,下面的代码从列表bicycles 中提取第一款自行车:

复制代码
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
❶ print(bicycles[0])

输出结果:

复制代码
trek

索引从0而不是1开始

在Python中,第一个列表元素的索引为0,而不是1。在大多数编程语言中都是如此,这与列表操作的底层实现相关。如果结果出乎意料,请看看你是否犯了简单的差一错误。

第二个列表元素的索引为1。根据这种简单的计数方式,要访问列表的任何元素,都可将其位置减1,并将结果作为索引。例如,要访问第四个列表元素,可使用索引3。

下面的代码访问索引1 和3 处的自行车:

复制代码
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
print(bicycles[1])
print(bicycles[3])

输出结果:

复制代码
cannondale
specialized

Python为访问最后一个列表元素提供了一种特殊语法。通过将索引指定为-1 ,可让Python返回最后一个列表元素:

复制代码
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
print(bicycles[-1])

输出结果:

复制代码
specialized

这种语法很有用,因为你经常需要在不知道列表长度的情况下访问最后的元素。这种约定也适用于其他负数索引,例如,索引-2 返回倒数第

二个列表元素,索引-3 返回倒数第三个列表元素,以此类推。

使用列表中的各个值

可像使用其他变量一样使用列表中的各个值。例如,你可以使用拼接根据列表中的值来创建消息。下面来尝试从列表中提取第一款自行车,并使用这个值来创建一条消息:

复制代码
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
message = "My first bicycle was a " + bicycles[0].title() + "."
print(message)

我们使用bicycles[0] 的值生成了一个句子,并将其存储在变量message 中。输出是一个简单的句子,其中包含列表中的第一款自行车:

复制代码
My first bicycle was a Trek.

练习:

Python 将一些朋友的姓名存储在一个列表中,并将其命名为names 。依次访问该列表中的每个元素,从而将每个朋友的姓名都打印出来。

复制代码
names = ["Alice", "Bob", "Charlie"] 
for name in names: 
    print(name) 

想想你喜欢的通勤方式,如骑摩托车或开汽车,并创建一个包含多种通勤方式的列表。根据该列表打印一系列有关这些通勤方式的宣言,如"I would like to own a Honda motorcycle"。

复制代码
commute_methods = ["motorcycle", "car", "bus", "subway"] 
for method in commute_methods: 
    if method == "motorcycle": 
        print(f"I would like to own a Yamaha {method}.") 
    elif method == "car": 
        print(f"I would like to drive a BMW {method}.") 
    elif method == "bus": 
        print(f"I often take the local {method} to work.") 
    elif method == "subway": 
        print(f"The {method} is very convenient for my commute.") 
相关推荐
yinuo1 天前
轻松接入大语言模型API -04
前端
袋鼠云数栈UED团队1 天前
基于 Lexical 实现变量输入编辑器
前端·javascript·架构
cipher1 天前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
UrbanJazzerati1 天前
非常友好的Vue 3 生命周期详解
前端·面试
AAA阿giao1 天前
从零构建一个现代登录页:深入解析 Tailwind CSS + Vite + Lucide React 的完整技术栈
前端·css·react.js
兆子龙1 天前
像 React Hook 一样「自动触发」:用 Git Hook 拦住忘删的测试代码与其它翻车现场
前端·架构
兆子龙1 天前
用 Auto.js 实现挂机脚本:从找图点击到循环自动化
前端·架构
SuperEugene1 天前
表单最佳实践:从 v-model 到自定义表单组件(含校验)
前端·javascript·vue.js
昨晚我输给了一辆AE861 天前
为什么现在不推荐使用 React.FC 了?
前端·react.js·typescript
不会敲代码11 天前
深入浅出 React 闭包陷阱:从现象到原理
前端·react.js