匿名作用域
全局变量使用外部的,局部变量是使用内部。
作用域:使用的范围。
当全局变量和局部变量同名时,局部变量有先。全局变量,全局变量和局部变量的作用域不同。
生命周期:存在时间的长短不同。
形式参数:只占一个坑、实际参数:实际运用。
匿名函数:没有名字的函数。Lambda
随机数
Sort()排序方法 sorted排序函数
迭代器
迭代是Python最强大的功能之一,是访问集合元素的一种方式。。
迭代器是一个可以记住遍历的位置的对象。
迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。
迭代器有两个基本的方法:iter() 和 next()。
字符串,列表或元组对象都可用于创建迭代器:
#匿名函数 lambda
sum = lambda arg1, arg2: arg1 + arg2;
print( sum(10, 20))
sum = lambda arg1, arg2: arg1 + arg2;
print( sum(20, 20))
def add(a,b,fun):
print(fun(a,b))
add(11,22,lambda ar1,ar2:ar1-ar2)
list1=[1,4,6,7,9,12,17]
list1 = filter(lambda i : i%2==1,list1)
for i in list1:
print(i)
#reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)
students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
print(sorted(students, key=lambda s: s[2]) )
students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
print(sorted(students, key=lambda s: s[2], reverse=True))
#sorted排序
a = [5,7,6,3,4,1,2]
b = sorted(a)
print(b)
#sort
a = [5,7,6,3,4,1,2]
a.sort()
print(a)
#1关键字参数
# 可写函数说明
def printme(str):
"打印任何传入的字符串"
print(str);
return;
# 调用printme函数
printme(str="菜鸟教程");
#2关键字参数 函数参数的使用不需要使用指定顺序
# 可写函数说明
def printinfo(name, age):
"打印任何传入的字符串"
print("名字: ", name);
print("年龄: ", age);
return;
# 调用printinfo函数
printinfo(age=50, name="runoob");
#默认参数
# 可写函数说明
def printinfo(name, age=35):
"打印任何传入的字符串"
print("名字: ", name);
print("年龄: ", age);
return;
# 调用printinfo函数
printinfo(age=50, name="runoob");
print("------------------------")
printinfo(name="runoob");
#全局变量和局部变量
total = 0; # 这是一个全局变量
# 可写函数说明
def sum( arg1, arg2 ):
#返回2个参数的和."
total = arg1 + arg2; # total在这里是局部变量.
print ("函数内是局部变量 : ", total)
return total;
#调用sum函数
sum( 10, 20 );
print ("函数外是全局变量 : ", total)
#迭代器
list=[1,2,3,4]
it = iter(list) # 创建迭代器对象
for x in it:
print (x, end=" ")
#使用 next() 函数迭代器
import sys # 引入 sys 模块
list = [1, 2, 3, 4]
it = iter(list) # 创建迭代器对象
while True:
try:
print(next(it))
except StopIteration:
sys.exit()