- 浏览: 241660 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (127)
- vim (3)
- python (44)
- pymysql (1)
- mysql (9)
- macvim (1)
- erlang (3)
- twisted (0)
- tornado (5)
- django (7)
- postgresql (5)
- sql (1)
- java (7)
- tech (4)
- cache (1)
- lifestyle (3)
- html (1)
- ubuntu (2)
- rabbitmq (1)
- algorithm (8)
- Linux (4)
- Pythonista (1)
- thread (1)
- sort (6)
- 设计模式 (1)
- search (1)
- Unix (6)
- Socket (3)
- C (2)
- web (1)
- gc (1)
- php (10)
- macos (1)
最新评论
-
2057:
这个程序有bug。
查找算法学习之二分查找(Python版本)——BinarySearch -
dotjar:
NB
一个Python程序员的进化[转]
简单总结以及整理如下:
列表推导(list comprehensions)
use enumerate
用Lists作为Stacks
用Lists作为Queues
Functional Programming Tools
Nested List Comprehensions
The del statement
Tuples and Sequences
Sets
Similarly to list comprehensions, set comprehensions are also supported:
Q:
1、取两个list的交集和差集
参考资料:
Expert Python Programming
http://docs.python.org/2/tutorial/datastructures.html#more-on-lists
>>> dir(list) ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
引用
append(...)
L.append(object) -- append object to end
count(...)
L.count(value) -> integer -- return number of occurrences of value
extend(...)
L.extend(iterable) -- extend list by appending elements from the utterable
index(...)
L.index(value, [start, [stop]]) -> integer -- return first index of value.
Raises ValueError if the value is not present.
insert(...)
L.insert(index, object) -- insert object before index
pop(...)
L.pop([index]) -> item -- remove and return item at index (default last).
Raises IndexError if list is empty or index is out of range.
remove(...)
L.remove(value) -- remove first occurrence of value.
Raises ValueError if the value is not present.
reverse(...)
L.reverse() -- reverse *IN PLACE*
sort(...)
L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*;
cmp(x, y) -> -1, 0, 1
L.append(object) -- append object to end
count(...)
L.count(value) -> integer -- return number of occurrences of value
extend(...)
L.extend(iterable) -- extend list by appending elements from the utterable
index(...)
L.index(value, [start, [stop]]) -> integer -- return first index of value.
Raises ValueError if the value is not present.
insert(...)
L.insert(index, object) -- insert object before index
pop(...)
L.pop([index]) -> item -- remove and return item at index (default last).
Raises IndexError if list is empty or index is out of range.
remove(...)
L.remove(value) -- remove first occurrence of value.
Raises ValueError if the value is not present.
reverse(...)
L.reverse() -- reverse *IN PLACE*
sort(...)
L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*;
cmp(x, y) -> -1, 0, 1
列表推导(list comprehensions)
>>> [i for i in range(10) if i%2==0] [0, 2, 4, 6, 8]
use enumerate
>>> seq = ["one", "two", "three"] >>> for i, element in enumerate(seq): ... print i, element ... 0 one 1 two 2 three
用Lists作为Stacks
>>> stack = [3,4,5] >>> stack.append(6) >>> stack.append(7) >>> stack [3, 4, 5, 6, 7] >>> stack.pop() 7 >>> stack [3, 4, 5, 6] >>> stack.pop() 6 >>> stack [3, 4, 5] >>> stack.pop() 5 >>> stack [3, 4]
用Lists作为Queues
>>> from collections import deque >>> queue = deque(["Eric", "John", "Michael"]) >>> queue.append("Terry") >>> queue.append("Graham") >>> queue.popleft() 'Eric' >>> queue.popleft() 'John' >>> queue deque(['Michael', 'Terry', 'Graham'])
Functional Programming Tools
>>> def f(x):return x%2!=0 and x%3!=0 ... >>> filter(f, range(2,25)) [5, 7, 11, 13, 17, 19, 23] >>> seq = range(8) >>> def add(x,y):return x+y ... >>> map(add, seq, seq) [0, 2, 4, 6, 8, 10, 12, 14] >>> map(lambda x,f = lambda x,f:f(x-1,f)+f(x-2,f) if x >1 else x:f(x,f),range(10)) [0, 1, 1, 2, 3, 5, 8, 13, 21, 34] >>> def add(x,y):return x+y ... >>> reduce(add,range(1,11)) 55 >>> def sum(seq): ... def add(x,y):return x+y ... return reduce(add, seq, 0) ... >>> sum(range(1,11)) 55 >>> sum([]) 0
Nested List Comprehensions
>>> matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]] >>> [[row[i] for row in matrix] for i in range(4)] [[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]
The del statement
>>> a = [1,2,3,4,5,6,7,8,9,0] >>> del a[0] >>> a [2, 3, 4, 5, 6, 7, 8, 9, 0] >>> del a[2:4] >>> a [2, 3, 6, 7, 8, 9, 0] >>> del a[:] >>> a []
Tuples and Sequences
>>> empty = () >>> singleton = 'hello', >>> len(empty) 0 >>> len(singleton) 1 >>> singleton ('hello',) >>> t=1,2,3 >>> t (1, 2, 3) >>> x, y,z = t
Sets
Similarly to list comprehensions, set comprehensions are also supported:
>>> a = {x for x in 'abracadabra' if x not in 'abc'} >>> a set(['r', 'd'])
Q:
1、取两个list的交集和差集
>>> l1=[1,2,3,4,5,6,7,8,9,0] >>> l2=[2,4,6,8] >>> list(set(l1).intersection(l2)) [8, 2, 4, 6] >>> list(set(l1).difference(l2)) [0, 1, 3, 5, 7, 9]
参考资料:
Expert Python Programming
http://docs.python.org/2/tutorial/datastructures.html#more-on-lists
发表评论
-
macos 10.9.2 clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command
2014-03-25 19:13 1723方法总是有的,当然需要你去寻找。 当然如果花费太多的时间在一件 ... -
PostgreSQL psycopg2:IndexError: tuple index out of range
2014-01-09 17:04 2189Postgresql psycopg2使用like查询的时候 ... -
Python 迭代器和生成器
2013-10-15 23:09 2809迭代器 迭代器只不过是一个实现迭代器协议的容器对象。它基于两个 ... -
Python时间模块
2013-10-15 23:03 3425time模块 时间模块中最常用的一个函数就是获取当前时间的函数 ... -
Python装饰器
2013-10-15 22:59 1510编写自定义装饰器有许多方法,但最简单和最容易理解的方法是编写一 ... -
Python Excel
2013-09-10 17:21 932安装lib easy_install xlrd def ... -
排序算法学习(python版本)之堆排序(HeapSort)
2013-07-01 22:54 1958Contains: 堆排序以及堆排序的应用 堆排序(Heaps ... -
python range xrange
2013-06-25 23:30 1104引用Help on built-in function ran ... -
python class
2013-06-25 00:54 1786引用类是创建新对象类 ... -
AttributeError: 'module' object has no attribute 'SendCloud'
2013-06-05 11:46 7018网上查了下 意思是说你命名的文件名不能和lib重名,这样会导 ... -
python string
2013-05-07 23:44 2161如果这就是字符串,这本来就是字符串 首先看下字符串的方法 ... -
Python property
2013-03-29 19:56 0由于之前有总结过,可以参考http://2057.iteye. ... -
python tips
2013-03-28 23:57 8461、enum #!/usr/bin/env python ... -
python decorators
2013-03-28 23:36 1324Contains: 1、decorators 2、funct ... -
python closures
2013-03-28 22:09 1149Closure:如果在一个内部函数里,对在外部作用域(但不是在 ... -
Python map、filter,reduce介绍
2013-03-28 22:02 12421、filter(function,iterable) 引用C ... -
Python __new__ 、__init__、 __call__
2013-03-26 23:49 5295Contains: __new__: 创建对象时调用,返回当 ... -
Python socket简介
2013-03-25 23:42 2117自豪地使用dir和help. Python 2.7.2 ( ... -
Tornado ioloop源码简析
2013-03-21 00:18 2800#!/usr/bin/env python #-*-en ... -
Tornado httpserver 源码简析
2013-03-17 01:49 1744整个流程就是创建一个socket socket.socket ...
相关推荐
如下所示: import re word = test s = test abcdas test 1234 testcase testsuite ... 您可能感兴趣的文章:Python 查找list中的某个元素的所有的下标方法python 获取list特定元素下标的实例讲解python
本文实例讲述了Python List列表对象内置方法。分享给大家供大家参考,具体如下: 前言 在上一篇中介绍了Python的序列和String类型的内置方法,本篇继续学习作为序列类型成员之一的List类型的内置方法。 软件环境 ...
本文实例讲述了Python list列表中删除多个重复元素操作。分享给大家供大家参考,具体如下: 我们以下面这个list为例,删除其中所有值为6的元素: l=[9,6,5,6,6,7,8,9,6,0] 首先尝试remove方法: l.remove(6) ...
python list 使用举例
列表pythonlist.zip
python list的deepcopy过慢(csdn)————程序
pythonlist是数组还是链表实现的-数组和链表结构(python)-1 数组和链表.pdf
<pre name=code class=python>#list转矩阵,矩阵列合并 x = [[1.2,2.2,1.4],[1.3,2.4,2.1],[1,1,0]] #表示有三个点,第一个点为(1,2,1,3)类型为1 #将其转换为矩阵,每一行表示一个点的信息 m = np.array(x).T print ...
下面小编就为大家分享一篇基于python list对象中嵌套元组使用sort时的排序方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
python ListCtrl首部文件双击事件!
python list序列
今天小编就为大家分享一篇python list数据等间隔抽取并新建list存储的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
主要介绍了Python list操作用法,以实例形式较为详细的总结分析了Python中list的各种常见函数的功能与使用方法,需要的朋友可以参考下
这篇文章主要介绍了Python list运算操作代码实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在操作list的时候,经常用到对列表的操作运算,比如说,...
本篇文章主要介绍了Python list切片原理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
用关键字 in 和not in 来 ... 您可能感兴趣的文章:python list是否包含另一个list所有元素的实例Python判断两个list是否是父子集关系的实例python对list中的每个元素进行某种操作的方法Python之list对应元素求和的方法
这时就需要以相同的顺序打乱两个list,那么在python中如何实现呢?可以通过设置相同的随机种子,再shuffle的方式来实现。 代码如下: import random randnum = random.randint(0,100) random.seed(randnum)
今天小编就为大家分享一篇python list转置和前后反转的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧