Python学习小结(一)

1,split()与join的用法
    split()是字符串内置的方法,默认是以空格为分界,返回的是一个列表。
    join()是列表的一个内置方法,返回的是一个字符串。
2,字符串翻转s=s[::-1]
3,range与xrange的区别
    range(50) 下标从0到49
    range(4,50) 下标从4到49
    range(1,50,5) 下标从1到46
    range返回的是一个列表,而xrange返回的是一个迭代器(iterator)。python3里面不再含有xrange,统一为range。
4,sort 与sorted函数的区别
    sort()是list的内置函数
    sorted()是python的内置函数
    前者就地改变列表,后者生成一个新的列表
    sorted(iterable,key=None,reverse=False)
    增加一个key作为比较参数,这个参数在比较前被执行
    对于字典dict或者tuple的排序,可以指定按照哪一个开始排,使用lamda函数
    student_tuples = [('john', 'A', 15),('jane', 'B', 12),('dave', 'B', 10),]
    sorted(student_tuples, key=lambda student: student[2])   # sort by age
    输出:[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
    student_tuples.sort(key=lambda x: x[2])
    输出:[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
5,lamda用于编写简单的函数
    如f=lamda x,y,z:x+y+z
    f(1,2,3)返回的值是6
6,python中*和**有以下三点区别:
    作为运算符,*表示乘,**表示次方 
    指定函数传入参数点的类型,用于参数前面,*表示传入的参数按照元组存储,**表示以字典方式存储
    **还可以用于求两个字典的并集
7,map可以用于在序列中映射函数
def inc(x):  
return x+10  
L = [1,2,3,4]  
print map(inc,L)  
print map((lambda x: x+10),L)  
    此外还可以使用列表解析(根据已有列表,创建新的列表的过程)
print [x**2 for x in range(10)]  
print map((lambda x: x**2), range(10))

你可能感兴趣的:(Python)