python列表extendpython 基础教程_python基础教程(四)

列表

本节继续讨论列表不同元组和字符串的地方:列表是可变的(mutable)----可以改变列表的内容,并且列表有很多有用的、专门的方法。

List函数可以将一个字符串拆分成列表。

>>> list('chongshi')

['c', 'h', 'o', 'n', 'g', 's', 'h', 'i']

改变列表:元素赋值

例如,我们想对一个列表中的某个元素赋值。

>>> x =[1,2,3,4]

>>> x[2]=18

>>>x

[1, 2, 18, 4]

删除元素

从列表中删除元素也很容易,使用dele语句来实现。

>>> names = ['zhangsan','lisi','wangwu','sunliu']

>>> del names[2]

>>>names

['zhangsan', 'lisi', 'sunliu']

分片赋值:

48304ba5e6f9fe08f3fa1abda7d326ab.png

>>> name = list('huzi')

>>>name

['h', 'u', 'z', 'i']

>>> name[2:]=list('dazhi')

>>>name

['h', 'u', 'd', 'a', 'z', 'h', 'i']

48304ba5e6f9fe08f3fa1abda7d326ab.png

name的内容为“huzi” ,从第3个字符(2)开始替换,用“da”替换“zi”并被扩容“zhi”,所以新的name的内容为“hudazhi”。

列表方法

方法是一个与某些对象有紧密联系的函数,对象可能是列表、数字,也可能是字符串或者其他类型的对象,一般来说,方法可以这样进行调用:

对象.方法(参数)

方法调用与函数调用很类似。

1、append

append方法用于在列表末尾追加新的对象:

>>> abc = [1,2,3]

>>> abc.append(4)

>>>abc

[1, 2, 3, 4]

2、count

count方法统计某个元素在列表中出现的次数:

48304ba5e6f9fe08f3fa1abda7d326ab.png

>>> ['to','be','or','not','to','be',].count('to')

2

>>> x = [[1,2],1,1,[2,1,[1,2]]]

>>> x.count(1)

2

>>> x.count([1,2])

1

48304ba5e6f9fe08f3fa1abda7d326ab.png

3、extend

extend方法可以在列表的末尾一次性追加另一个序列中的多个值。用新列表扩展原有列表:

>>> a = [1,2,3]

>>> b = [4,5,6]

>>>a.extend(b)

>>>a

[1, 2, 3, 4, 5, 6]

4、index

index 方法用于从列表中找出某个值第一个匹配项的。

>>> knights = ['We','are','the','kninghts','who','say','ni']

>>> knights.index('who')

4

>>> knights[4]

'who'

5、insert

insert 方法用于将对象插入到列表中:

>>> numbers = [1,2,3,5,6,7]

>>> numbers.insert(3,'four')

>>>numbers

[1, 2, 3, 'four', 5, 6, 7]

6、pop

pop 方法会移除列表中一个元素(默认是最后一个),并且返回该元素的值:

48304ba5e6f9fe08f3fa1abda7d326ab.png

>>> x = [1,2,3]

>>>x.pop()

3

>>>x

[1, 2]

>>>x.pop(0)

1

>>>x

[2]

48304ba5e6f9fe08f3fa1abda7d326ab.png

7、remove

remove 方法用于移除列表中某个值的第一个匹配项:

>>> x = ['to','be','or','not','to','be']

>>> x.remove('be')

>>>x

['to', 'or', 'not', 'to', 'be']

8、reverse

revers方法将列表中的元素反向存放

>>> x = [1,2,3]

>>>x.reverse()

>>>x

[3, 2, 1]

9、sort

sort方法用于在原位置对列表进行排序。在“原位置排序”改变原来的列表,从而让其中的元素能按一定的顺序排列。

>>> x = [4,6,2,1,7,9]

>>>x.sort()

>>>x

[1, 2, 4, 6, 7, 9]

元组:不可变序列

元组与列表一样,也是一种序列。唯一的不同是元组不能改变。创建元组的语法很简单:如果你用逗号分割了一些值,那么你就自动创建了元组。

48304ba5e6f9fe08f3fa1abda7d326ab.png

>>> 1,2,3(1, 2, 3)

>>> (1,2,3) #用括号表示元组

(1, 2, 3)

>>> () #空元组

()

48304ba5e6f9fe08f3fa1abda7d326ab.png

如何实现包含一个值的元组呢?方法有点奇特----必须加逗号,即使只有一个值:

48304ba5e6f9fe08f3fa1abda7d326ab.png

>>> 42,

(42,)

>>> (42,)

(42,)

>>> 3 * (20+1)

63

>>> 3 * (20+1,)

(21, 21, 21)

48304ba5e6f9fe08f3fa1abda7d326ab.png

tuple 函数

tuple函数的功能与list函数基本上一样:以一个序列作为参数并把它转换为元组。

48304ba5e6f9fe08f3fa1abda7d326ab.png

>>> tuple([1,2,3])

(1, 2, 3)

>>> tuple('abc')

('a', 'b', 'c')

>>> tuple((1,2,3))

(1, 2, 3)

48304ba5e6f9fe08f3fa1abda7d326ab.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值