scrapy学习--list回顾

记得以前看过一些文章将的是学习知识的记忆是螺旋式上升的,所以需要不停的巩固已有的知识。

在学习Scrapy的过程中,我会时不时地写一些python基础知识的回顾篇,用于回顾一些常用的知识点。

当然作为回顾,我不会写的特别详细,可以作为一个学习的提纲,然后去翻阅资料,这也是一个学习的过程。

还有就是第一手资料应该是官方文档。


1. append 

用于在列表的尾部追加新的内容: 
>>>lst = [1,2,3] 
>>>lst.append(4) 
>>>lst 
[1,2,3,4] 

2.count 
统计各个元素在列表中的个数: 
>>>['to','be','or','not','to','be'].count('to') 

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


3.extend 
在列表末尾追加另一个序列中的多个值。 
>>>a = [1,2,3] 
>>>b=[4,5,6] 
>>>a.extent(b) 
>>>a 
[1,2,3,4,5,6] 
与连接操作不同之处在于extend方法修改了原本的列表,而连接操作是返回一个新列表: 
>>>a = [1,2,3] 
>>>b = [4,5,6] 
>>>a + b 
[1,2,3,4,5,6] 
>>>a 
[1,2,3]
连接再赋值也具有相同效果,但是效率低于extend方法。 
>>>a=a+b 
也可以用分片赋值实现相同效果: 
>>>a = [1,2,3] 
>>>b = [4,5,6] 
>>>a[len(a):] = b 
>>>a 
[1,2,3,4,5,6] 
但是这种方式可读性不如extend方法。 

4.index 
用于从列表中找出第一个匹配项的索引位置。 
>>>knights = ['We' , 'are' , 'the' , 'keights' , 'who' , 'say' , 'ni'] 
>>>knights.index('who') 

如果搜索一个列表中没有的就会发生一个异常。 

5.insert 
将对象插入到列表中: 
>>>num = [1,2,3,4,5,6] 
>>>num.insert(3 , 'four') 
>>>num 
[1,2,3,'four',4,5,6] 
同样可以用insert实现,但是可读性不如insert: 
>>>num = [1,2,3,4,5,6] 
>>>num[3:3] = 'four' 
>>>num 
[1,2,3,'four',4,5,6] 

6.pop 
移除一个元素,默认移除最后一个,并且返回这个元素的值,索引位置从0开始: 
>>> x = [1,2,3] 
>>>x.pop() 

>>>x.pop(0) 
>>>x 
[2] 

7.remove 
移出列表中某个值的第一个匹配项,它没有返回值。 

8.reverse 
将列表中的元素反向存放,无返回值: 
>>> x = [1,2,3] 
>>>x.reverse() 
>>>x 
[3,2,1] 

9.sort 
在原位置对列表进行排序,会改变原来的列表,而不是返回一个列表副本。 
>>>x = [4,6,2,1,7,9] 
>>>y = x.sort() 
>>>print y 
none 
用上面的方法y是得不到结果的,sort对x重新排序,返回的结果确实空。 
需要把x的副本赋值给y,然后再对y进行排序。 
>>>x = [4,6,2,1,7,9] 
>>>y = x[ : ] 
>>>y.sort() 
>>>y 
[1,2,4,6,7,9] 
在赋值整个列表的时候使用分片是一种很效率的方式,只是简单的把x赋值给y是没用的, 
x和y会指向同一个列表。 
另一种方法是使用sorted函数 
>>>x = [4,6,2,1,7,9] 
>>>y = sorted(x) 
>>>y 
[1,2,4,6,7,9] 






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值