学习python时记录的一些知识点:
Set
#非常有用啊,直接去除重复元素,缺点是输出结果没有排序
>>> list = ['c', 'b', 'b', 'b', 'd', 'b', 'c', 'a', 'a']
>>> b = set(list)
>>> b
set(['a', 'c', 'b', 'd'])
>>> c = [i for i in b]
>>> c
['a', 'c', 'b', 'd']
lambda
def make_repeater(n):
return lambda s:s*n
twice = make_repeater(2)
print twice('word')
print twice(5)
input and raw_input
当输入为纯数字时:
input返回的是数值类型,如int,float
raw_inpout返回的是字符串类型,string类型
input会计算在字符串中的数字表达式,而raw_input不会。
如输入 “57 + 3”:
input会得到整数60
raw_input会得到字符串”57 + 3”
字符串连接:
delimiter = '_*_'
mylist = ['Brazil', 'Russia', 'India', 'China']
print delimiter.join(mylist)
=>Brazil_*_Russia_*_India_*_China
关于__doc__:
只有函数中用’’’xxx’’’定义的注释可以被打印出来
用#注释的打印不出来
print printMax.__doc__
参数赋值:
只有在形参表末尾的那些参数可以有默认参数值,即你不能在声明函数形参的时候,先声明有默认值的形参而后声明没有默认值的形参。
这是因为赋给形参的值是根据位置而赋值的。例如,def func(a, b=5)是有效的,但是def func(a=5, b)是 无效 的。