可变参数(列表,字典),不可变参数(string,Number,元组)
全局变量(声名在函数外的,如果在函数内使用则需要global),局部变量(声名在函数内的,)
Python内置的 sorted()函数可对list进行排序:
当对象没有引用的时候,或程序结束的时候,程序自动调用__del__()
全局变量(声名在函数外的,如果在函数内使用则需要global),局部变量(声名在函数内的,)
可变类型的对象为全局变量时都不需要global声名,不可变参数需要global声名
三个重要的大数据函数:
from functools import reduce foo=[2,18,9,22,17,24,8,12,27] mapdame=map(lambda x:x*2+10,foo) for i in mapdame: print(i) def tt(x): return x*2+10 result =map(tt,foo) print("result:{0}".format(result)) f=filter(lambda x:x>10,foo)#过滤满足条件的结果 for i in f: print(i) def re(x,y): return x+y r=reduce(re,foo) print("r={0}".format(r)) print(sum(foo))#sum求和 print(max(foo))#最大值 #print(sorted(foo))#scorted函数会生成一个新的列表,不改变原来列表的值,reverse=True倒序 s=sorted(foo,reverse=True) print(s) print(foo) dict1={"a":1,"d":3,"c":2} print(sorted(dict1.items()))
Python内置的 sorted()函数可对list进行排序:
>>>sorted([36, 5, 12, 9, 21])
[5, 9, 12, 21, 36]
但 sorted()也是一个高阶函数,它可以接收一个比较函数来实现自定义排序,比较函数的定义是,传入两个待比较的元素 x, y,如果 x 应该排在 y 的前面,返回 -1,如果 x 应该排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0。
sorted()也可以对字符串进行排序,字符串默认按照ASCII大小来比较:
>>> sorted(['bob', 'about', 'Zoo', 'Credit'])
['Credit', 'Zoo', 'about', 'bob']
'Zoo'排在'about'之前是因为'Z'的ASCII码比'a'小。
.sort()排序方法
shus.sort()对原有列表进行排序,改变原来列表的顺序,无返回值
print(shus)就是改变后的列表
sorted()排序函数
排序时不影响原数据,产生新的排序数据
print(sorted(shus))排序后的结果
print(shus)还是原结果
当对象没有引用的时候,或程序结束的时候,程序自动调用__del__()
del 引用
当对象没有引用的时候,或程序结束的时候,程序自动调用__del__()
del 引用
删除时自动调用__del__()
程序结束时自动调用__del__()