zoukankan      html  css  js  c++  java
  • python学习之函数

    函数

    一个函数就是将一些语句集合在一起的部件,能够不止一次的在程序中运行
    def语句将创建一个函数对象,并将其赋值给一个变量名。
    def <name> (arg1,arg2...):
      <statment>;
    return ;
    def 语句是实时执行的,当她运行的时候,他将创建一个新的函数对象并将其赋值给一个变量名
    ,因为他是一个语句,所以可以出现中在任何语句可以出现的地方。甚至嵌套在其他语句中,
    if test:
      def func():
    ...
    else:
      def func():
    ...
    func();


    函数仅仅是一个对象,所以可以像如下调用
    othername = func();
    othername();

    实际上除了调用之外,函数允许任意的属性附加到记录信息以供后面使用 就像javascript一样

    def fun():
    ...
    fun()
    fun.attr = value;

    --------------------------------------------------------------------
    参数
    值传递和引用传递
    def changed (a,b):
    a = 2;
    b[0]='spam'
    x = 1
    l = [1,2]
    chenged(x,l)
    x,l
    (1,['spam',2])

    任意参数的实例
    def f(*args): print(args);

    f(1,2,3,4)
    (1,2,3,4)

    当这个函数被调用的时候python 将所有位置相关的额参数都收集到一个元祖当中,并将这个元祖赋值给args

    ××特性类似 但是他只对关键字参数有效,将这些关键字传递给一个新的字典,这个字典能够通过一半的额字典工具处理,

    def (**args):print(args)
    f()
    {}
    f(a=1,b=2)
    {'a':1,'b':2}


    函数头部能够混合一般参数,×参数以及××参数

    例如
    def f(a,*agrs,**kargs):print (a,args,kargs)

    f(1,2,3,x=1,y=2)
    1,(2,3),{x:1,y:2}


    在序列中映射函数
    counter = [1,2,3,4];
    def inc(x):return x+10

    list(map(inc,counter))
    [11,12,13,14]

    这里也常是lamda出现的地方 匿名函数

    list (map((lambda x:x+10),counter))

  • 相关阅读:
    谷歌的教育软件
    一些视频教程网站推荐
    TexturePacker 介绍
    Flash Builder常用快捷键
    flash builder 4 编译器参数
    Flex中神奇的快速辅助 Ctrl+1
    iPhone 真机调试应用程序
    说说Xcode4中xib绑定的原理
    springboot + mybatis + gradle项目构建过程
    Elasticsearch Xpack认证
  • 原文地址:https://www.cnblogs.com/techdreaming/p/5184383.html
Copyright © 2011-2022 走看看