zoukankan      html  css  js  c++  java
  • Python函数基础知识

    1、def是可执行的代码。python的函数是由一个新的语句编写的,即def。不像C这样的编译语言,def是一个可执行的语句,——函数并不存在,直到python运行了def后才存在,事实上,在if语句,while循环甚至在其他def语句中嵌套是合法的。在典型的操作中,def语句在模板文件中编写,并自然而然的在模板第一次被倒入时候才生成。
    
    2、def创建了一个对象并将其副职给这个变量名,就像所有的副职一样,函数名变成了某一个函数的引用。函数名起始并没有什么神奇。
    
    3、lambda创建一个对象但将其作为结果返回,也可以用lamdba表达式创建函数,这个功能允许我们把函数定义内关联到语法上的一条def语句不能工作的地方
    
    4、return将一个结果对象发送给调用者。当函数被调用时,其调用者停止运行直道这个函数完成了他的工作,之后函数才将控制权返还给调用者。函数通过return语句将结果发送给调用者。
    
    5、yield向调用者发回一个结果对象,但是记住他离开的地方。像生存器这样的函数也可以通过yield语句来返回值,并挂起他们的状态以便稍后能够恢复。
    
    6、global声明一个模块级的变量并赋值。在默认情况下,所有在一个函数中被复制的对象,是这个函数的本地变量,并且仅在这个函数运行的过程中存在,为了分配一个可以在整个模块中都可以使用的变量名,函数需要在global语句中将它列出来,并且是通过赋值语句将变量名绑定至作用域。
    7、nonlocal声明了将要赋值的一个封闭的函数变量。
    8、def语句
    	def name(arg1,arg2,arg3,...,argN):
    		statement
    9、python函数如果没有返回值,默认返回的是None。
    10、函数定义好后,可以将函数赋值给不同的对象,同时,可以通过新的变量名进行调用。函数也是对象,所以可以给函数附加属性
    	def f(a):print(a)
    	t = f
    	f(3)
    	t(3)
    	t.attr  = 0
    	print(f.attr)  #输出0
    11、本地变量
    	def interset(seq1,seq2):
    		res = []
    		for x in seq1:
    			if x in seq2:
    				res.append(x)
    		return res
    	说明:
    	只要第一个参数seq1支持迭代就行,不然不支持for循环。
    

      

  • 相关阅读:
    NSInvocation的基本使用
    OC和JS代码的互调
    HTTPS的基本使用
    数据安全
    AFN框架
    部分文件的MIMEType
    linux中文件颜色,蓝色,白色等各自代表的含义
    CentOS下mysql常用命令
    mysql 完整备份和恢复
    mysqldump 导出提示Couldn't execute SELECT COLUMN_NAME...
  • 原文地址:https://www.cnblogs.com/hbcb533/p/3673991.html
Copyright © 2011-2022 走看看