Python 全局变量 局部变量

匿名作用域

全局变量使用外部的,局部变量是使用内部。

作用域:使用的范围。

当全局变量和局部变量同名时,局部变量有先。全局变量,全局变量和局部变量的作用域不同。

生命周期:存在时间的长短不同。

形式参数:只占一个坑、实际参数:实际运用。

匿名函数:没有名字的函数。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()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章