用人话概况Python基础(二):列表、元组

用人话概况Python基础(二):列表、元组

列表

定义:列表是由一系列按特定顺序排列的元素组成的,我们可以对列表进行操作,如增删改等。Python中用方括号[ ]来表示列表,并用逗号来分隔其中的元素。

#打印列表是包括方括号的
#此处打印列表name
>>>name = ['lisa','jack','tom']
>>>name
['lisa','jack','tom']

列表的操作:访问、增、删、改、切片

访问列表元素:

在列表中的索引是从0开始的,而不是从1开始。
Python为访问最后一个列表元素提供了一种特殊的语法,将索引指定为-1可以访问列表最后一个元素,索引指定为-2可以访问列表倒数第二个元素。

#打印列表索引为0的元素值
#打印列表索引为2、-1、-2的元素值,并要求首字母大写
>>>name = ['lisa','jack','tom','rock']
>>>name[0]
lisa
>>>name[2].title()
Tom
>>>name[-1].title()
Rock
>>>name[-2].title()
Tom
添加列表元素:

1.使用方法append()在列表的末尾添加新元素。

#打印列表name
#在列表name的末尾添加新元素'liuliu',并将新的列表打印出来
>>>name = ['lisa','jack','tom']
>>>name
['lisa','jack','tom']

>>>name.append('liuliu')
>>>name
['lisa','jack','tom','liuliu']

2.使用方法insert()在列表的任意位置添加新元素。

insert(x,y) :x代表要添加的新元素索引位置,y代表要添加的新元素信息

>>>name = ['lisa','jack','tom']
>>>name
['lisa','jack','tom']

#在第0位添加新元素shark,这种操作将会把列表原有的元素都右移一个位置
>>>name.insert(0,'shark')
>>>name
['shark','lisa','jack','tom']

3.使用方法extend(list)合并两个列表

>>>a=[1,2,'q']
>>>b=[8,9]
>>>a.extend(b)
>>>a
[1,2,'q',8,9]

注:append和extend的区别:append是对列表添加元素,extend是合并两个列表

删除列表元素:

1.根据索引删除某位置上的元素 [使用del语句]

#使用del语句删除元素
>>>name = ['lisa','jack','tom']
>>>name
['lisa','jack','tom']

>>>del name[1]
>>>name
['lisa','tom']

>>>del name[1]
>>>name
['lisa']

2.根据索引删除元素并记录下该元素的信息 [使用方法pop()]

#方法pop()可以删除列表末尾的元素,并让你存储下该元素的信息

>>>name = ['lisa','jack','tom']
>>>name
['lisa','jack','tom']

#用变量name_1存储列表name末尾的元素,并将该元素从列表name中删除
#打印name_1
>>>name_1 = name.pop()
>>>name
['lisa','jack']

>>>name_1
tom
#方法pop(x)可以删除列表中任意位置的元素并记录下该元素的信息(值)
>>>name = ['lisa','jack','tom']
>>>name
['lisa','jack','tom']

#删除列表name[1]的元素,并将该元素值存储于name_2中,紧接着打印出新的列表name
#打印出【The first customer is Jack!】这句话
>>>name_2 = name.pop(1)
>>>name
['lisa','tom']

>>>"The first customer is " + name_2.title() + "!"
The first customer is Jack!

3.根据信息值删除元素 [使用方法remove()]

#remove()可以根据要删除的元素的值,来删除对应的元素
>>>name = ['lisa','jack','tom']
>>>name
['lisa','jack','tom']

#分别删除列表name中值为jack和tom的元素,并分别打印出新列表name
>>>name.remove('jack')
>>>name
['lisa','tom']

>>>name.remove('tom')
>>>name
['lisa']

#当列表中有多个相同值时,L.remove(var)将删除第一次出现的var元素
>>>L =[1,2,3,4,5,6,4,8,9]
>>>L.remove(4)
>>>L
[1, 2, 3, 5, 6, 4, 8, 9]
修改列表元素:
#若想要修改某位置上的值,只需对该位置给予新的元素即可,新元素的值将覆盖原来的信息
#此处将tom改成jenny
>>>name = ['lisa','jack','tom']
>>>name
['lisa','jack','tom']

>>>name[2] = 'jenny'
>>>name
['lisa','jack','jenny']
切片:

定义:在Python中,处理列表的部分元素称为切片。

创建切片

要创建切片,我们就需要获取指定的元素集合序列,即第一个元素的索引和最后一个元素的索引加1
[x:y:z] : 从x到y-1,以z个单元为间隔
[x:y] : x,x+1,x+2,x+3…y-1(获取列表索引第x位到y-1的所有元素)
[:y]:0,1,2,3,4…y-1(获取列表索引第0位到y-1的所有元素)
[x:]:获取列表第x位到末尾的所有元素
[:]:遍历列表所有元素

#用切片打印列表customer中索引为0,1,2的元素
>>>customer = ['aric','tanc','cosc','sinc','cott','yend']
>>>customer[0:3]
['aric','tanc','cosc']

#用切片打印列表customer中索引为2,3,4的元素
>>>customer[2:5]
['cosc','sinc','cott']

#用切片打印列表所有元素
>>>customer[:]
['aric','tanc','cosc','sinc','cott','yend']

#用切片打印第-4到末尾的元素
>>>customer[-4:]
['cosc','sinc','cott','yend']

#用切片打印索引0到4,间隔单元为2
>>>customer[0:5:2]
['aric', 'cosc', 'cott']
使用切片

利用切片对列表进行操作:
1.复制列表

#利用切片复制列表,将列表food_1的元素复制至列表food_2中
>>>food_1 = ['noodles','apple','banana','rice']
>>>food_2 = food_1[:]
>>>food_2
['noodles','apple','banana','rice']

2.修改列表

#利用切片在索引1处开始修改元素
#从下面的案例可以看出用切片修改元素,切片会依次遍历red的每个字符
#以字符形式一个个从列表索引1开始依次添加新元素,并将列表中右边的元素依次向右移
>>>food_1 = ['noodles','apple','banana','rice']
>>>food_1[1:2] = "red"
>>>food_1
['noodles', 'r', 'e', 'd', 'banana', 'rice']

#如果使用索引的方法则会是不同的结果
>>>food_1 = ['noodles','apple','banana','rice']
>>>food_1[1] = "red"
>>>food_1
['noodles','red','banana','rice']

3.添加新值

  • 在列表中的某一位置插入一个值
    a[n:n]=[q] :在列表a中的n位置插入一个值q
#在索引2处添加orange
>>>food_1 = ['noodles','apple','banana','rice']
>>>food_1[2:2]=['orange']
>>>food_1
['noodles', 'apple', 'orange', 'banana', 'rice']

列表排序

  • sort():此函数会对目标列表进行排序,会改变列表本身,让其按照一定的顺序排列。默认顺序为从小到大,当添加参数reverse=True时,则变成从大到小排列
>>> a = [3,2,5,4,9,8,1]
>>>a.sort()
>>>a
[1,2,3,4,5,8,9]
------------------------------------------------------------------------
>>>b=[1,3,2,4,5]
>>>b.sort(reverse=True)
>>>b
[5,4,3,2,1]

  • sorted():此函数对列表进行排序时,不会改变列表本身,而是生成一个副本
>>>a=[3,2,5,4,9,8,1]
>>>sorted(a)
[1,2,3,4,5,8,9]
>>>a
[3,2,5,4,9,8,1]

元组

定义:元组是不可变的列表,即拥有一系列不可修改的元素,也就是说元组中的元素不可修改。
列表使用方括号[]标识的,而元组是用圆括号()标识的,索引规则和列表一样从0开始,访问元素方法也一样。

>>>demo = (999,666,555)
>>>demo(1)
666

注意:由于元组元素不可修改,如果我们一定要修改元组变量,则需重新定义整个元组

>>>toys = ('a','b','c')
>
#重新定义元组toys
>>>toys = ('e','f','d')

二次更新完善2020/5/30

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值