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

    1、函数文档字符串,用于存放函数的说明,一般写在第一行

    2、函数调用:函数名+参数列表(函数的参数分实际参数和形式参数,str就是形式参数,则‘welcome 头 python’就是实际参数)

    参数需要一一对应,形式参数有几个,就需要传几个实际参数,否则会报错,如图有一个形式参数x,却传了两个实际参数1,2

      

    在调用函数时,缺省参数的值如果没有传入,则被认为是默认值

     

    如果调用函数和定义函数同时有值得情况下,默认值就会被覆盖,输出以调用值的参数为准

     

     在传值时从左到右传值

       

    如果这样就会报Syntax error,因为x已经有值了

     

    需要调换x,y的位置,则就不会报错了

     

    函数的多类型传值: (多类型传值并不是说可以传递任意类型的值)

    向函数传元组:

    根据索引

    指定传参

     

    也可以在定义的元组名前加*(表示传递元组内的全部参数)

    向函数传字典:

    指定传参

     

    也可以在定义的元组名前加**(表示传递字典内的全部参数)

    字典内的key也是要与形式参数一一对应的,否则也会报错

      

    *如果像这种不一样的情况下,就必须指定参数:(dict[key]=value)

     

    处理冗余参数:

    因为形式参数只有一个,但是却传了三个,显然就会报错:

     

    什么情况下不报错呢,可以这样写形参,也就是用*args(*可以传递元组,也可以用来接收元组,args可以随便定义)

     

    处理映射关系的时候要用到字典,同样**用来接收字典

     

    3、函数返回值return

    1>可以返回任意数据类型,默认为None

     

     

    2>执行完return,函数退出

     

     

    3>注意区分return和print

    把print换成return

    4、函数的全局变量和局部变量:

    函数内部的a=2重新赋值并没有起作用,a=2只在函数内部起作用

    函数中定义的数只能在函数中起作用,否则会报错

    如果函数中定义要想在函数外使用的情况下,可以变量名前面加上global来进行定义

    定义的全局边变量只有在调用的时候才能起作用,否则不起作用

    5、Python匿名函数

    lambda函数是一种快速单行定义函数的方法,使代码更简洁,避免了不必要的函数体定义

    格式:lambda x,y:x*y(计算x*y)

    reduce函数:逐次操作list的每项,接受的参数是两个,最后返回一个结果

      

    用lambda和reduce函数一行就可以实现1+2+3+........+100之和:

     

  • 相关阅读:
    DataTable 中varchar 转换为 Double 后重新 排序。
    asp.net 后台实现删除,划掉效果
    word2007二级标题自动编号不从大标题开始的解决方法
    asp.net 多个文件同时下载
    asp 时间倒数后按钮可用
    js获取gridview模板列中textbox行列的值
    JS错误 theForm.submit();SCRIPT3: 找不到成员。
    JS验证 只能输入小数点,数字,负数。
    关于SQLServer2008数据如何导入SQL2005的解决办法,高版本数据导入低版本中。
    asp.net中TreeView的大数据加载速度优化
  • 原文地址:https://www.cnblogs.com/zqq521/p/6187198.html
Copyright © 2011-2022 走看看