《Python基础教程》学习笔记——列表

列表:Python的“苦力”
列表是序列的一种,它是可变的。

list函数可以将其他序列转换为列表

list1 = list('hello')
print list1
list2 = list((1,2,3))
print list2

----------基本的列表操作----------

1. 改变列表:元素赋值

可以通过索引来为列表中的元素赋值,但注意不要越界

x = [1,1,1]
x[1] = 2
print x

2. 删除元素

可以使用del语句

names = ['Alice','Beth','Cecil','Dee-Dee','Earl']
del names[2]
print names

3.切片赋值

name1 = list('Perl')
print name1
name1[2:] = list('ar')
print name1

可以使用与原序列不等长的序列将切片替换

name1[1:] = list('ython')
print name1

切片赋值语句可以在不需要替换任何原有元素的情况下插入新的元素

numbers1 = [1,5]
numbers1[1:1] = [2,3,4]
print numbers1

也可以使用切片赋值语句删除列表中的元素

numbers1[1:4] = []
print numbers1

numbers2 = [0,1,2,3,4,5,6,7,8,9]
numbers2[-5:-8:-1] = [10 ,10,10]
print numbers2

----------列表方法----------

1.append :用于在列表末尾追加新的对象

append方法与其他一些方法类似,是直接修改原始的列表

lst1 = [1,2,3]
lst1.append(4)
print lst1

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

lst2 = ['to','be','or','not','to','be']
cnt1 = lst2.count('to')
print cnt1

3.extend:在列表的末尾一次性追加另一个序列中的多个值

lst3 = [1,2,3]
lst4 = [4,5,6]
lst3.extend(lst4)
print lst3

需要注意如下一点:
这样做是可行的,但是代码的可读性差

a = [1,2,3]
b = [4,5,6]
a[len(a):] = b
print a

4.index:用于从列表中找出某个值的第一个匹配项的索引位置

knights = ['we','are','the','knights','who','say','ni']
print knights.index('who')

5.insert:用于将对象插入到列表中

numbers3 = [1,2,3,5,6,7]
numbers3.insert(3,'four')
print numbers3

与extend方法一样,insert方法的操作也可以用分片赋值来实现

numbers4 = [1,2,3,5,6,7]
numbers4[3:3] = ['four']
print numbers4

这种方法的可读性差

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

x = [1,2,3]
print x.pop()
print x

print x.pop(0)
print x

使用append和pop可以实现栈

7.remove :用于移除列表中某个值的第一个匹配项,没有返回值

x = ['to','be','or','not','to','be']
x.remove('be')
print x

8.reverse :将列表中的元素反向存放,没有返回值

x = [1,2,3]
x.reverse()
print x

9.sort:对列表进行排序,会改变原始列表,但没有返回值

x = [4,6,2,1,7,9]
x.sort()
print x

如果想保持原列表不变,同时得到排序后的类型,那么用如下操作

x = [4,6,2,1,7,9]
y = x[:]  #这里不能使用y = x
y.sort()
print x
print y

也可以使用sorted函数,这个函数可以用于任意序列,却总返回一个列表

x = [4,6,2,1,7,9]
y = sorted(x)
print x
print y

10.高级排序

用户自定义排序规则,例如使用内建函数cmp(x,y)
然后将该函数提供给sort方法作为参数

numbers = [5,2,9,7]
numbers.sort(cmp)
print numbers

sort方法有另外两个可选的参数——key和reverse
其中用一个函数来指定key,reverse的值为False或者True

x = ['afsafs','sdfsfs','wee','asfasfafa','a']
x.sort(key = len,reverse = True)
print x
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值