zoukankan      html  css  js  c++  java
  • 有关函数的参数一些案列

    # a=5
    # print(id(a))
    # a=10
    # print(id(a))
    from functools import reduce #引入模块的相应函数或方法
    def calc(x,y=None,*numbers): #定义函数,并设定参数
    print(numbers) #输出不定长参数numbers
    sum = 0 #定义变量
    for n in numbers: #迭代参数numbers内变量
    sum = sum + n * n #求得所有数值的平方和
    return sum #返回给函数结果
    result=calc(1,2) #调用函数calc,并赋值参数x,y的值为1和2.所以numbers为空值
    print(result) #输出的为sum最初定义值

    def person(name,age,**kw):
    print('name:',name,'age:',age,'other:',kw)
    kk={'city':'Shanghai','aa':'abc'}
    person('Frank',37,**kk)
    #一共有四种类型的参数
    #1.普通参数
    #2.默认参数
    #3.不定长参数,最终组成元组
    #4.关键字参数,最终组成字典,传参时注意传key=value

    def f1(a, b, c=0, *args, **kw):
    print('a =', a, 'b =', b, 'c =', c, 'args =', args, 'kw =', kw)
    abc=(1,2,3)
    kw={"cc":1,"d":2}
    f1(*abc,**kw)

    def f2(a, b, c=0, *, d, **kw):
    print('a =', a, 'b =', b, 'c =', c, 'd =', d, 'kw =', kw)
    f2(*abc, **kw)
    def f3(a,b,c=0,d=None):
    print(c,d)
    f3(1,2,d=5)#命名参数
    def f4(a,b):
    a,b=11,12
    return a,b#当返回多个值时,自动组成一个元组
    c,d=f4(1,2)#也可以使用多个变量接收
    print(c,d)
    #可变参数(列表,字典,set),不可变参数(string,Number,元组)
    #全局变量(声明在函数外,如果在函数内使用则需要global),
    # 局部变量(声明在函数内)

    foo = [2, 18, 9, 22, 17, 24, 8, 12, 27]
    mapdemo=map(lambda x:x*2+10,foo)
    for i in mapdemo:
    print(i)
    def tt(x):
    return x*2+10
    m=tt
    print("m={0}".format(m))
    mresult=m(12)
    print("mresult=%d"%mresult)
    result=map(tt,foo)
    print("result:{0}".format(result))
    f=filter(lambda x:x>10,foo)#过滤满足条件的结果
    print(f)
    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))
    print(max(foo))
    s=sorted(foo,reverse=True)#sorted函数会生成一个新的列表,不改变原来列表的值,reverse=True倒序
    print(s)
    print(foo)
    dict1={"a":1,"d":3,"c":2}
    print(sorted(dict1.items()))
    foo.sort()
    print(foo)
    class ReverseDemo:
    def __init__(self,obj):
    self.obj=obj
    def __lt__(self, other):
    return self.obj > other.obj

    print("--------",sorted([36, 5, 12, 9, 21], key=lambda x:ReverseDemo(x)))

    a=['bob', 'about', 'Zoo', 'Credit']
    print(sorted(a,key=str.lower))
  • 相关阅读:
    《梦断代码》随笔第1篇
    四则运算3
    1、软件工程结对开发之求一维数组中连续最大子数组之和
    四则运算2单元测试
    《梦断代码》随笔第0篇
    四则运算2完整版
    四则运算2设计思想
    软件工程第一个程序
    软件工程阅读计划
    电梯调度之需求分析
  • 原文地址:https://www.cnblogs.com/qianshuixianyu/p/9114732.html
Copyright © 2011-2022 走看看