Python基础学习之列表

目录

一、列表的基本操作

1.用下标取得列表中的单个值

2.利用切片取得子列表

3.用 len()取得列表的长度

4.用 del 语句从列表中删除值

5.in 和 not in 操作符

二、列表的方法

1.用 index()、count()方法在列表中查找值

2.用 append 、insert和extend方法在列表中添加新的元素 

 3.用 remove()、pop()和clear()方法从列表中删除值

 4.用 sort()和reverse()方法将列表中的值排序/反序

三、列表推导式

 四、元组数据类型


一、列表的基本操作

1.用下标取得列表中的单个值

        假定列表[1,2,3,4,5,6]保存在名为 list的变量中。Python 代码 list[0]将求值为1,list[1]将求值为2,依此类推。列表后面方括号内的整数被称为“下标”。虽然下标从 0 开始并向上增长,但也可以用负整数作为下标。整数值−1 指的是列表中的最后一个下标,−2 指的是列表中倒数第二个下标,以此类推。下标只能是整数,不能是浮点值。

        列表也可以包含其他列表值。这些列表的列表中的值,可以通过多重下标来访问,像这样:   

list=[[1,2,3,4,5],['tom','jerry','jeck']]
print(list[0])
# >>>[1, 2, 3, 4, 5]
print(list[1])
# >>>['tom', 'jerry', 'jeck']
print(list[0][1])
# >>>2
print(list[1][0])
# >>>tom

2.利用切片取得子列表

        就像下标可以从列表中取得单个值一样,“切片”可以从列表中取得多个值,结果是一个新列表。切片输入在一对方括号中,像下标一样,但它有两个冒号分隔的整数。在一个切片中,第一个整数是切片开始处的下标。第二个整数是切片结束处的下标。切片向上增长,直至第二个下标的值,但不包括它。切片求值为一个新的列表值。示例代码如下:

list=[1,2,3,4,5,6]
print(list[0:3])
# >>>[1, 2, 3]
print(list[1:4])
# >>>[2, 3, 4]
print(list[0:-1])
# >>>[1, 2, 3, 4, 5]

        作为快捷方法,你可以省略切片中冒号两边的一个下标或两个下标。省略第一个下标相当于使用 0,或列表的开始。省略第二个下标相当于使用列表的长度,意味着分片直至列表的末尾。示例代码如下: 

list=[1,2,3,4,5,6]
print(list[:3])
# >>>[1, 2, 3]
print(list[2:])
# >>>[3, 4, 5, 6]
print(list[:])
# >>>[1, 2, 3, 4, 5, 6]

3.用 len()取得列表的长度

        len()函数将返回传递给它的列表中值的个数。示例代码如下:

list=[1,2,3,8,9]
print(len(list))
# >>>5

4.用 del 语句从列表中删除值

        del 语句将删除列表中下标处的值,表中被删除值后面的所有值,都将向前移动一个下标。示例代码如下:

list=[1,3,5,6,7,9,10]
del list[2]
print(list)
# >>>[1, 3, 6, 7, 9, 10]
del list[2]
print(list)
# >>>[1, 3, 7, 9, 10]

5.in 和 not in 操作符

        利用 in 和 not in 操作符,可以确定一个值否在列表中。如果查找的在列表中则返回True,反之False。示例代码如下:

list=[1,5,999,1024,1314,520]
a=1024
b=-2
print(a in list)
# >>>True
print(a not in list)
# >>>False
print(b in list)
# >>>False
print(b not in list)
# >>>True

二、列表的方法

1.用 index()、count()方法在列表中查找值

        列表值有一个 index()方法,可以传入一个值,如果该值存在于列表中,就返回它的下标。如果该值不在列表中,Python就报 ValueError。如果列表中存在重复的值,就返回它第一次出现的下标。count统计某个元素在列表出现的次数。示例代码如下:

list=[1,2,3,4,5,6,7,9,8,9]
print(list.index(5))
# >>>4
print(list.index(8))
# >>>8
print(list.index(9))
# >>>7
print(list.count(9))
# >>>2
print(list.index(10))
# >>>ValueError: 10 is not in list

2.用 append 、insert和extend方法在列表中添加新的元素 

        要在列表中添加新值,就使用 append()和 insert()方法。append()方法调用,将参数添加到列表末尾。insert()方法可以在列表任意下标处插入一个值。insert()方法的第一个参数是新值的下标,第二个参数是要插入的新值。extend方法在列表末尾追加另外一个列表的多个值。示例代码如下: 

list=[1,2,4,5]
list1=[7,8,9]
list.append(6)
print(list)
# >>>[1, 2, 4, 5, 6]
list.insert(2,3)
print(list)
# >>>[1, 2, 3, 4, 5, 6]
list.extend(list1)
print(list)
# >>>[1, 2, 3, 4, 5, 6, 7, 8, 9]

 3.用 remove()、pop()和clear()方法从列表中删除值

        给 remove()方法传入一个值,它将从被调用的列表中删除。删除列表中不存在的值,将导致 ValueError 错误。如果该值在列表中出现多次,只有第一次出现的值会被删除。pop()移除列表中的元素默认是最后一个,返回该元素的值。clear()清空列表。示例代码如下:

list=[123,234,345,456]
list.remove(234)
print(list)
# >>>[123, 345, 456]
list.remove(567)
# >>>ValueError: list.remove(x): x not in list
list.clear()
print(list)
# >>>[]

 4.用 sort()和reverse()方法将列表中的值排序/反序

        数值的列表或字符串的列表,能用 sort()方法排序。如果reverse 关键字参数为 True,则sort()按逆序排序。注意:sort()不能对既有数字又有字符串值的列表排序。sort()方法对字符串排序时,使用“ASCII 字符顺序”,而不是实际的字典顺序。这意味着大写字母排在小写字母之前。如果需要按照普通的字典顺序来排序,就在 sort()方法调用时,将关键字参数key 设置为 str.lower。reverse() 将列表中的元素反向。示例如下:

list = [2, 6, 4, 9, 7, 8, 1, 10, 1]
list.sort()
print(list)
# >>>[1, 1, 2, 4, 6, 7, 8, 9, 10]
sp = ['ants', 'cats', 'dogs', 'badgers', 'elephants']
sp.sort()
print(sp)
# >>>['ants', 'badgers', 'cats', 'dogs', 'elephants']
list = [2, 6, 4, 9, 7, 8, 1, 10, 1]
list.sort(reverse=True)
print(list)
# >>>[10, 9, 8, 7, 6, 4, 2, 1, 1]
list1=[10, 9, 8, 7, 6, 4, 2, 1, 1]
print(list1.reverse())
# >>>None
print(list1)
# >>>[1, 1, 2, 4, 6, 7, 8, 9, 10]
# 按ASCII
spam = ['Alice', 'ants', 'Bob', 'badgers', 'Carol', 'cats']
spam.sort()
print(spam)
# >>>['Alice', 'Bob', 'Carol', 'ants', 'badgers', 'cats']
# 按字典
spam = ['a', 'z', 'A', 'Z']
spam.sort(key=str.lower)
print(spam)
# >>>['a', 'A', 'z', 'Z']

三、列表推导式

        Python 有一种特殊表达式一一推导式,它可以将一种数据结构作为输入,经过过滤、计算等处理 最后输 另一种数据结构 。根据数据结构的不同可分为列表推导式、集合推导式和字典推导式。

列表推导式语法结构

 四、元组数据类型

        除了两个方面,“元组”数据类型几乎与列表数据类型一样。首先,元组输入时用圆括号(),而不是用方括号[]。但元组与列表的主要区别还在于,元组像字符串一样,是不可变的。元组不能让它们的值被修改、添加或删除。

        函数 list()和 tuple()将返回传递给它们的值的列表和元组版本。


都看到这里了,觉得对你有帮助的话,就点个赞吧!!!

 

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

LLGululu

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

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

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

打赏作者

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

抵扣说明:

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

余额充值