更多课程 选择中心


Python培训

400-996-5531

如何理解和使用 Python 中的列表

  • 发布:马超
  • 来源:DeveloperPython
  • 时间:2017-10-31 16:22

话说回来,作为一个 Python 初学者若你读了 这是一篇 Python 入门级别的文章 和 Python 中应该注意的编码问题 这两篇文章,我相信你应该可以去编写一些简单的代码。但这些远远是不够的,这两篇文章更多的是让你有勇气的站到了 Python 这个 “大门” 的门口。

那么接下来,看完这篇文章才算是真正打开了这扇门。

这篇内容会深入到 Python 的语法中去,内容是关于 Python 中列表的概念、以及如何使用列表。

列表是什么?

官话是这么说的,列表是由一系列按特定顺序排列的元素组成。放到生活中的例子,比如你们家庭所有的姓名、年龄、身高,各自串起来它就可以分别形成一个列表。姓名的列表,年龄的列表,身高的列表。

回到 Python,在 Python 中用方括号 [ ] 来表示列表,并且用逗号来分隔其中的元素,比如:

>>> names = ['xiyouMc','帅超','超哥']>>> print(names)['xiyouMc', '\xe5\xb8\x85\xe8\xb6\x85', '\xe8\xb6\x85\xe5\x93\xa5']

这就是一个列表,同时我把它通过 print 函数打印了出来,至于为什么转码为 \xe5.... 的,是因为写数据的时候会默认转码为 UTF-8 省存储,不懂得朋友回到上篇恶补下。

那么,已经看到了列表的样子,我们应该如何去访问这个列表呢?

访问列表元素

上面也提到了列表是按照特定顺序组成的,那么我们是不是可以通过某个元素的位置(索引)来访问这个元素呢?当然是可以的。

比如:

>>> names=['xiyouMc','帅超','超哥']>>> ames[0]'xiyouMc'>>>

我们指定去访问第一个元素,那么将可以获取 names 列表中 0 位置(索引)的元素。

索引是什么?

在程序员的眼里,某一个数组(列表)的第 1 个数字并不是真正意义上的第一个。而是因为它的前面还有个数字,就是第 0 个数字。所以,你就会想到索引代表的就是位置,并且在计算机中有 0 这个索引。

回到列表,在 Python 中,第一个列表元素的索引就是 0 ,而不是1。所以以后和程序员聊天的话别跟他讲你是第一名或者 Top 1,你应该说你是第零名或者 Top 0。 (毫无违和感的段子)

那么在列表中以此类推,第二个列表元素的索引就是 1 ,第 N 的元素的索引也就是 N -1。

比如:

>>> names=['xiyouMc','帅超','超哥']>>> ames[0]'xiyouMc'>>> names[2]'\xe8\xb6\x85\xe5\x93\xa5'>>>

如果在访问列表元素的时候,你指定不正确的索引值,那么将会报错,提示数组越界。

在 Python 中,索引值可以为负数,负数的意思并不是说第一个位置之前还有并行时空的元素,而是表示从数组后面的位置开始计算,比如 -1 就代表最后一个元素,-2 就代表倒数第二个元素:

>>> names=['xiyouMc','帅超','超哥']>>> ames[-1]'\xe8\xb6\x85\xe5\x93\xa5'>>> ames[-2]'\xe5\xb8\x85\xe8\xb6\x85'>>> ames[-3]'xiyouMc'>>>

负索引的这种情况在实际开发中很实用,有时候你需要在不知道列表长度的情况下去访问最后的元素。这时候用负索引就可以一下子解决问题了。

在实际的代码中使用

如上 names 那个列表,我们现在需要把这个列表应用到一段文字中:

“xiyouMc is called 帅超 or 超哥”

>>> names=['xiyouMc','帅超','超哥']>>> content = names[0] + ' is called ' + names[1] + 'or' + names[2]>>> print(content)xiyouMc is called 帅超or超哥>>>

当然,你也可以通过负索引来组合起来。

这篇先对 Python 中的列表做一个简单的了解和使用,若你是初学者,一定要动手去练习一下,更或者去尝试做一些笔记来记录下来。

本文内容转载自网络,本着分享与传播的原则,版权归原作者所有,如有侵权请联系我们进行删除!

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:未来不会Python的Java程序员会被淘汰?
下一篇:如何快速学习和掌握Python爬虫技术

Python培训这么多,靠谱的Python培训班怎么选?

Python与C++学哪个好?

AI产品运营主要做什么?

Python所有系统都能用吗?

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省