python初学者程序员

跟我读python3文档:011_列表(3.1.3. Lists

2017-08-27  本文已影响92人  咖喱py

贯穿始终的理念:别废话,就是干!


往期回顾


文档解读

python3文档第三小节链接地址:3. An Informal Introduction to Python

本章主要讲解3.1.3. Lists(列表)这个小节


3.1.3. Lists(列表)

鉴于我们在之前的章节已经讲解列表了(用大楼举的例子),所以,这次,我们直接来看下面的代码吧~

>>> squares = [1, 4, 9, 16, 25]  #赋值操作
>>> squares  #打印变量的值
[1, 4, 9, 16, 25]

>>> squares[0]  #索引操作,还记得上一期的内容吗,我们说,字符串是特殊的列表
1
>>> squares[-1] #负数下标,还记得下标是什么吗?
25
>>> squares[-3:]  # 分片操作
[9, 16, 25]

还记得分片基本要素吗?

>>> squares = [1, 4, 9, 16, 25]
>>> squares[ : ]

自己输入试试看~

还记得字符串里,加号+和乘号 * 的作用吗?
在列表中,他们也有相同的作用,不废话,直接上代码:

>>> squares = [1, 4, 9, 16, 25]
>>> squares + [36, 49, 64, 81, 100]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

自己动手试试下面的代码,看看和你预计的结果一样吗?

>>> a = [123,987]
>>> a * 3


以上内容,和我们上一期讲解的字符串基本上没有区别。但下面的内容就要注意了。

还记得我们说字符串是特殊的列表,它特殊在哪里吗?

段落截取(一)

Unlike strings, which are immutable, lists are a mutable type,i.e. it is possible to change their content

名词解释

  1. immutable
    不可改变的
  2. mutable
    可变的
  3. i.e.
    这是英语中一种常见的缩写形式,相当于 that is
    中文翻译为:也就是

段落大意

字符串值不可改变,列表值可变。

我们还是直接来看代码:

>>> a = [1, 8, 27, 65, 125]  

>>> a[3] = 64  # 将3号值改为64。注意:序号是从0开始的。
>>> a
[1, 8, 27, 64, 125]

思考题:

既然列表值是可变的,那么能不能一次变换多个值?
提示:参考分片

自己先尝试在解释器里写一下,之后在看下面的答案。


答案:

>>> letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
>>> letters[2:5] = ['C', 'D', 'E']
>>> letters
['a', 'b', 'C', 'D', 'E', 'f', 'g']
>>> #思考:如何删除改变的值?
>>> letters[2:5] = []
>>> letters
['a', 'b', 'f', 'g']
>>> # 思考:如何删除全部值?
>>> letters[:] = []
>>> letters
[]

本期拓展

在python语言中,有一句话叫:一切皆对象。
要理解这句话,你首先要理解什么是对象。
对象,可以看成是一种特殊的数据类型,这种数据类型是由多种东西组成的。其中包括变量、包括函数。
如何理解呢?比如列表就是一个对象,列表里可以包含多个值。
比如:

>>> a = [123, 'b', '432', [234, 432] ]
>>> c = [234, a]

但是,你不知道的是,列表里也包含函数。只不过它没有显示出来而已。
比如:append()函数。我们可以通过“”来调用列表的函数。
(append()函数的作用是在列表末尾加上其他值。组成全新的列表。)

>>> cubes = [1, 8, 27, 64, 125]
>>> cubes.append(216)  # 在末尾加上216
>>> cubes.append(7 ** 3)  # 在末尾加上7的3次方
>>> cubes
[1, 8, 27, 64, 125, 216, 343]

通过这个例子,能理解对象这个特殊类型了吗?
我们一般把对象里的变量叫做属性,把对象里的函数叫做方法
具体内容,我们等到讲对象时,在具体介绍。

本期依旧省略了很多内容,比如列表的方法,列表里面再装列表等。
想提高的同学,可以试着自己解读。

上一篇下一篇

猜你喜欢

热点阅读