python 集合运算
集合类型操作符(所有的集合类型)
联合( | )
联合(union)操作和集合的OR(又称可兼析取(inclusive
disjunction))其实是等价的,两个集
合的联合是一个新集合,该集合中的每个元素都至少是其中一个集合的成员,即,属于两个集合其
中
之一的成员。联合符号有一个等价的方法,union().
Edit By Vheavens
Edit By Vheavens
>>>
s | t
set(['c', 'b', 'e', 'h', 'k', 'o', 'p', 's'])
交集( & )
你
可以把交集操作比做集合的AND(或合取)操作。两个集合的交集是一个新集合,该集合中的每
个元素同时是两个集合中的成员,即,属于两个集合的成
员。交集符号有一个等价的方法,
intersection().
>>> s & t
set(['h',
's', 'o', 'p']
差补/相对补集( � )
两个集合(s
和t)的差补或相对补集是指一个集合C,该集合中的元素,只属于集合s,而不属
于集合t。差符号有一个等价的方法,difference().
>>>
s - t
set(['c', 'e'])
对称差分( ^ )
和其他的布尔集合操作相似,对称差分是集合的XOR(又称"异
或" (exclusive disjunction)).
两个集合(s
和t)的对称差分是指另外一个集合C,该集合中的元素,只能是属于集合s 或者集合t
的成员,不能同时属于两个集合。对称差分有一个等价的方
法,symmetric_difference().
>>> s ^ t
set(['k', 'b', 'e',
'c'])
混合集合类型操作
上面的示例中,左边的s 是可变集合,而右边的t 是一个不可变集合. 注意上面使用集合操作
运算符
所产生的仍然是可变集合,但是如果左右操作数的顺序反过来,结果就不一样了:
>>> t | s
frozenset(['c',
'b', 'e', 'h', 'k', 'o', 'p', 's'])
>>> t ^ s
frozenset(['c',
'b', 'e', 'k'])
>>> t - s frozenset(['k', 'b'])
如果左右两个操作
数的类型相同,既都是可变集合或不可变集合, 则所产生的结果类型是相同
的,但如果左右两个操作数的类型不相同(左操作数是set,右操作数是
frozenset,或相反情况),
Edit By Vheavens
Edit By Vheavens
则所产生的结果类型与左
操作数的类型相同,上例中可以证明这一点。还要注意,加号不是集合类
型的运算符:
>>> v = s + t
Traceback
(most recent call last):
File "<stdin>", line 1, in ?
TypeError:
unsupported operand type(s) for +: 'set' and 'set
相关文档:
对 Python 函数的"调制",是指对其做出合乎需求的设置。具体的调制方法,是将其参数设为固定值(常数)。
设定单一的参数值
原先的函数是这样的:
>>> def foo(cooked, standard):
... print "foo called with cooked: %s, standard: %s" % \
... (cooked, standard)
调用它:
>>> foo('a', ......
列表方法:
方法
说明
append( item )
在列表末尾插入(item )
count( element )
返回element在列表中出现的次数
extend( newlist )
将newlist的元素插入列表末尾
index( element )
返回element在列表中的索引,如果不存在,则引发ValueError异常
insert( index , item )
在index ......
Python中Range和XRange的区别(Difference between Range and XRange in Python)
最近机器出了点问题,所以一直没有写新的东西出来。之前在读Python的代码的时候,发觉好多人喜欢用XRange,而不是Range,我也只是记得学习的时候开始学到的是Range,后面又看到有个XRange,当时也没有深究,为什么Python里面要有两个同样的功 ......
windows下
1 下载python安装包, 一路下去安装
2 下载mysqldb安装
3 下载django文件, dyango-admin.py install 完成
-----如果启动后报错import error: dll load failed. 需要在site-package下增加dll: libguide40.dll libmmd.dll libmySQL.dll
创建应用后, manage.py 的program argument中应 ......