分享

基础语法第4关笔记

 czm5460 2021-06-18



主线课程:

一、列表



1.1 列表的概念

列表是Python中有序可变的一种数据类型在编程里,列表中的数据被称为列表的元素。列表的组成如下图:



列表是一个包容的数据类型。

其中的元素可以为任意数据类型,包括整数、浮点数、字符串、列表、以及后续我们会学到的元组,字典等。

比如:我们也可以把列表中的列表作为一个整体,看作是一个元素。



1.2 列表的索引

列表中的每个元素都有其对应位置的数字编号,即索引。 

在列表后面加一个中括号 [],里面再填上数字,就可以取到对应的内容。

列表名[索引]

Python里的元素是从0开始计数,也就是列表里面的第一个元素是元素0。

例如: list[n] 它表示的是:从左往右数,第n+1个元素。

除此之外,Python还支持用负数做索引。

例如: list[-n] 它表示的是:从右往左数,第n个元素。 具体正负索引相对应的元素位置



有时我们需要取出列表嵌套中的元素时,比如这时候就需要使用两次索引,当需要两次索引的时候,在Python上的格式为:

列表名[索引][索引]



1.3 列表的切片

切片即在列表中切取一段数据,生成一个新的列表。

在切片时,索引 [a:b] 的切取范围是:a <= X < b,左边有等于号,而右边是没有等于号的。其实切片,就是取出两个索引中间夹着的元素。



针对切片,我们用口诀来记这个切片:口诀是:“列表切片怎么6,记好取左不取右”

冒号左右的值不填的时候则代表一取到底。

Python
foods = ['虾饺', '龟苓膏', '薄荷冰粉', '四川凉面', '草莓圣代']

# 用切片的方法,在下方写出代码使其打印出 。
# 此处用print(foods[1:5])代替,也可取到最后一个元素。
print(foods[1:]) #输出: ['龟苓膏', '薄荷冰粉', '四川凉面','草莓圣代']

# 此处 用print(foods[0:4])代替,因为冒号左边不填相当于等于填了0。
print(foods[:4]) #输出: ['虾饺', '龟苓膏', '薄荷冰粉', '四川凉面']

1.4 添加列表元素

  • append函数

append在英文中是添加的意思。

使用格式:

列表名.append(你想要添加的单个元素)

通过 append() 添加元素,元素会被添加到列表的最后一个位置。



1.5 列表的修改

我们修改列表内的元素时,直接重新赋值就好了。

赋值的方法是:

列表名[索引] = 内容

二、元组

2.1 元组的概念

元组(tuple),是一种类似列表的数据类型。与列表在形式上有一个区别:列表用中括号[],而元组是用小括号()。



元组跟列表一样,都可以进行索引取值、切片等操作。

元组和列表最大的不同之处在于:元组,一经创建则不可修改。所以我们之前学习的列表的增加、修改这些动作,对于元组是不适用的。

另外需要注意,如果元组里只有一个元素,后面也要加逗号,如 a = ('xyz',) , 如果不加逗号的话,那它就不会被判定成元组。

2.2 可变数据和不可变数据

在Python里面,我们已经对这两种数据类型做了区分:可变数据类型与不可变数据类型。

像列表这样,我们可以直接对它进行修改的数据类型我们称之为可变数据类型。

而像元组这样一经创建以后就不可修改的,我们称之为不可变数据类型。

三、序列

3.1 序列的概念

在Python中,我们把像列表和元组这样的数据类型,都叫做序列,指的就是一组多个数据按顺序排成一列。序列内有一个个元素,每个元素都有对应的索引,用于标记元素的位置。同时字符串也是序列的一种。

序列内部的元素都能按索引取值、切片的规则给取出来。作为序列来说,所有的这些功能其实都是通用的。

3.2 成员运算符

结合if来判断某个元素是否在序列内时,常见写法是:if 元素 in 序列 ,可以理解为如果某个元素在列表内,就执行一些代码。如果想要判断一个元素是否不存在列表呢,可以用 if 元素 not in 序列 这个格式来判断。理解起来也很简单,not在英文中就是不的意思,if 元素 not in 序列 英文来理解就是如果元素不在列表里面的话。

举个例子:



支线课程:



1. len()

len 在英文中是单词 length 的缩写,中文是长度的意思。

在 Python 里,传入列表、元组、字符串等数据类型到 len() 中,就可以整数形式返回其长度。

对于列表和元组来说,所谓长度就是元素的个数。

Plain Text
# 创建元组 tup
tup = ('a', 'b', 'c')

# 使用len()计算元组 tup 中元素的个数,并打印验证结果
print(len(tup))

# 结果:
# 3

打印出返回的结果是 3 ,说明该元组的长度为 3 ,即有 3 个元素。



  1. count()

count 在英文里是计算的意思,而在 Python 里面添加一个新的元素。

count() 可用于统计序列(包括:列表、元组等)中某个元素出现的次数。

用count()时的语法格式是:序列.count(元素名)。传入参数元素名后,count()会以整数的数据类型返回该元素在序列内的个数。

Python
# 创建元组 rabits
rabits =  ('兔','兔','兔','兔','兔','兔','兔','兔','免','兔','兔','兔','兔','免','兔','兔','兔','兔','兔','兔','兔','兔','兔','兔','兔','兔','兔','兔','免')


# 使用count()计算列表 rabits 中有多少个'免',并打印
print(rabits.count('免'))

# 结果:
# 3

需要注意的是,与len()一样,count()返回的数据类型是整数,所以要用 str() 转化为字符串后才可以与字符串作拼接。



4. list()

list 在英文中就是列表的意思,而list()可以将合适的数据类型转换为列表,如元组、字符串等序列。

当元组没法对内部的元素做修改、增加等操作,就可以用到list()把元组转换为列表。

将需要转换的数据作为参数输入list()中,就可以把它转换为列表并返回:

Python
# 创建元组 tup
tup = ('a', 'b', 'c')

# 用list() 将元组 tup 转换为列表,并打印查看结果
print(list(tup))

# 结果:
# ['a', 'b', 'c']

打印结果显示元组('a', 'b', 'c')的小括号变成['a', 'b', 'c']的中括号了,说明它已经成功转换为列表了。



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多