Python学习之变量进阶【列表,元组】

目录

1、变量类型

2、列表

2.1 列表常用方法

2.2 循环遍历列表

2.3 拆包

2.4 列表推导式

3、公共方法

4、元组

4.1 元组和列表的差别

4.2 元祖和列表之间的转换


1、变量类型

Python 中数据类型可以分为数字型⾮数字型

数字型

  • 整型 ( int ) ;

  • 浮点型( float );

  • 布尔型( bool )

    • 真 True ⾮ 0 数 —— ⾮零即真 ;

    • 假 False 0 ;

非数字型

  • 列表;

  • 元组;

  • 集合;

  • 字典;

  • 字符串。

在 Python 中,所有非数字型变量都⽀持以下特点:

  1. 都是一个序列 ;

  2. 通过 变量名[索引] 方式取值 ;

  3. 通过 for in 遍历;

  4. 可以计算⻓度、最⼤和最⼩值 。

2、列表

List (列表) 是 Python 中使⽤最频繁的数据类型,在其他语⾔中通常叫做数组 ,专⻔⽤于存储 一串信息 。

  • 列表⽤ [] 定义,列表中的数据之间使⽤ , 分隔 ;

  • 列表的索引从 0 开始 ;

  • 索引就是数据在列表中的位置编号,索引⼜可以被称为下标

注:

从列表中取值时,如果超出索引范围程序会报错。

示例:

# 定义一个列表变量,名字叫 names,有三个元素
names = ["小明", "小红", "小绿"]
# 显示列表第一个元素的值
print(names[0])
# IndexError: list index out of range
# 错误,列表没有[3]这个值 
print(names[3])

我们还可以通过dir()函数查看某类型中定义的方法。

# 定义一个列表变量,名字叫 names,有三个元素
names = ["小明", "小红", "小绿"]
# 通过 dir 函数显示列表所有的方法
print(dir(names))

2.1 列表常用方法

分类方法说明
增加insert(索引,数据)在指定位置插入数据
append(数据)在末尾追加数据
extend(列表)追加另一个列表的值
修改列表[索引] = 值修改指定索引的数据
删除del(列表[索引])删除指定索引的数据
remove(数据)删除第一次出现的指定数据
pop()删除末尾数据
pop(索引)删除指定索引数据
clear()清空列表
统计count(数据)返回指定数据在列表中出现的次数
index(数据)返回数据在列表中的索引值,如果找不到抛出异常
排序sort()升序排序
sort(reverse=True)降序排序
reverse()逆置,反转

示例:

# 定义一个列表变量,名字叫 names,有三个元素
names = ["小明", "小红", "小绿"]
# 计算小明在数组中出现的次数
print(names.count('小明'))

2.2 循环遍历列表

遍历就是从头到尾依次从列表中获取数据

# 定义一个列表变量,名字叫 names,有三个元素
names = ["小明", "小红", "小绿"]
# 循环遍历列表
for i in names:
    print(i)

在 Python 中,可以使⽤ for 循环遍历所有⾮数字型类型的变量,包括:列表、元组、字典以及字符串。

2.3 拆包

拆包就是把一个列表中每个值拆出来, 拆包操作同样适用于元组,集合和字典。

# 定义一个列表变量,名字叫 names,有三个元素
names = ["小明", "小红", "小绿"]
# 通过对列表进行拆包方式获取列表中每个元素的值
a,b,c = names;
print(a,b,c) 

2.4 列表推导式

所谓的列表推导式,就是指轻量级的循环创建列表的⽅法 。

1、基本使用

# a 的内容为[3, 5, 7, 9]
a = [x for x in range(3, 10, 2)]
print(a)

2、在推导过程中使⽤if 

# a 的内容为[3, 5, 7, 9]
a = [x for x in range(3, 10) if x % 2 != 0]
print(a)

3、公共方法

分类方法说明
统计len(列表)返回列表元素个数
max(列表)返回列表中最大的数据
min(列表)返回列表中最小的数据
成员运算符值 in 列表判断值是否在列表中,存在返回 True,不存在返回 False
值 not in 列表判断值是否在列表中,存在返回 False,不存在返回 True

公共方法同样适用于元组,集合,字典,字符串等类型

示例:

# 定义一个列表变量,名字叫 names,有三个元素
names = ["小明", "小红", "小绿"]
# 判断列表中是否有小明,有就将其删除
if "小明" in names:
    names.remove("小明")
    # 打印
    print(names)

4、元组

Tuple (元组)与列表类似,不同之处在于元组的元素不能修改;

示例:

1、元组⽤ () 定义 。

# 定义一个元组,名字叫 names,有三个元素
names = ("小明", "小红", "小绿")
# 打印
print(names)

2、元组只有一个元素时,元素后面需要添加逗号

# 元组只有一个元素时,元素后面需要添加逗号
names = ("小明",)

3、定义元组时, ()可以省略

# 定义元组时, ()可以省略 
names = "小明",

4、 元组只有一个元素,尝试后面加和不加逗号的差别

names = ("小明",)
names2 = ("小明")
print(names)
print(names2)

4.1 元组和列表的差别

共同点:

常用方法都差不多。

for 循环遍历也一样。

不同点:

元组的内容不能修改,所以没有增加、修改、删除相关方法。

列表则相反。

4.2 元祖和列表之间的转换

把列表转化为元组目的是让列表不可以被修改,以保护数据安全 ;

  • 使⽤ list 函数可以把元组转换成列表 ;

  • 使⽤ tuple 函数可以把列表转换成元组 。

示例:

# 定义一个元组,名字叫 names,有三个元素
names = ("小明", "小红", "小绿")
# 将元组转换成列表
names = list(names)
print(names)
# 定义一个列表 名字叫sexs,有三个元素
sexs = ["男", "女", "未知"]
# 将列表转换成元组
sexs = tuple(sexs)
print(sexs)

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叫我阿杰好了

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值