python函数知识点,你掌握几个?

python函数的简单介绍和用法

python 函数
构成:由若干语句组成的语句块、函数名称、参数列表构成,他是组织代码的最小单位。
作用:1、结构化编程对代码的最基本的封装,一般按照功能组织一段代码
2、复用
3、代码更加简洁美观,可读易懂

def语句定义函数:
def 函数名(参数列表)
函数体(代码块)
return 返回值
可以没有return语句,隐式会返回None值
函数调用:函数名(),括号内写参数

 

参数:
定义中的参数为形参,只是一种符号的表达。调用中的参数为实参,是真正的值。定义要在调用前。
函数参数:分为 位置参数、关键字参数、可变参数(可变位置参数 *,可变关键字参数 **)、      keyword-only参数(可变位置参数之后)。
位置可变参数收集实参形成一个tuple,关键字可变参数收集实参形成一个dict
参数默认值:可以在未传入足够的实参的时候,对没有给定的参数赋值为默认值
位置参数要在关键字参数之前传入,可变参数要放在最后,keyword-only在位置可变参数后。
参数结构:
给函数提供实参时,可以在集合类型前使用*或者**,把集合类型的结构解开,提取出所有元素作为函数的实参。提取出的元素数目和类型要和参数的要求匹配。

 

函数的返回值:
用return语句返回 返回值,如果没有return,默认返回None
return语句并不一定是函数语句块的最后一条语句
一个函数可以存在多个return语句,但只会执行一条
如果函数执行了return语句,函数就会返回,之后的语句就不会被执行
函数不能同时返回多个值

 

函数嵌套:
在一个函数中定义了另外一个函数。
作用域:
一个表示符的可见范围,就是表示符的作用域,一般常说的是变量的作用域。
全局作用域:在整个程序运行环境中可见
局部作用域:在函数、类等内部可见。局部变量使用范围不能超过其所在的局部作用域。
外层变量作用域在内层作用域可见,相反不可见。
全局变量global:使用global关键字的变量,将内部作用域的变量声明为全局作用域中定义的变量。
闭包:出现在嵌套函数中,指的是内层函数引用到了外层函数的自由变量(自由变量:本层没有定义定    义在外层)但外层不能是全局,形成闭包。使用nonlocal关键字。

默认值的作用域:用(标识符.__defauits__)查看默认值。默认值本身不会变,但是默认值引用一个可变 类型(如list),引用类型的元素可以变动。
可以使用None作为默认参数,通过值的判断就可以灵活的选择创建或者修改传入对象 。
例子:def foo(x=None):
if x is None:
x=[]

函数的销毁:
全局函数销毁:重新定义同名函数、del 语句删除、程序结束时
局部函数销毁:重新在上一级作用域定义同名函数、del语句删除、上级作用域销毁时

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/87808

(0)
10590628461059062846
上一篇 2017-10-14 17:31
下一篇 2017-10-14 21:44

相关推荐

  • Python爬虫实战七之计算大学本学期绩点

    大家好,本次为大家带来的项目是计算大学本学期绩点。首先说明的是,博主来自山东大学,有属于个人的学生成绩管理系统,需要学号密码才可以登录,不过可能广大读者没有这个学号密码,不能实际进行操作,所以最主要的还是获取它的原理。最主要的是了解cookie的相关操作。 本篇目标 1.模拟登录学生成绩管理系统 2.抓取本学期成绩界面 3.计算打印本学期成绩 1.URL的获…

    2017-09-09
  • python数据类型及其函数方法归纳总结

    数据类型的分类: ֺ数值型: int ,float, complex, bool     序列对象: 字符串,列表,元组tuple     键值型 集合set,字典dict 如果按照可hash性来分类 hashable(可哈希性) An object is hashable if it has a hash value which never changes…

    2017-10-09
  • 面向对象,魔术方法

    面向对象 一面向对象 什么是面向对象: 一种认识世界、分析世界的方法论。将万事万物抽象为类。 类class: 类是抽象的概念,是万事万物的抽象,是一类事物的共同集合的集合。 用计算机语言来描述类,就是属性和方法的集合。 对象instance,object: 对象是类的具象,是一个实体。 每个个体都是抽象类的不同实体。 哲学 一切皆对象 对象是数据和操作的封装…

    Python笔记 2018-05-14
  • python基础

      shell作业 1. 取出文件基名     法一:cat 1.txt | egrep -o “[^/]+$”     法二:awk -F/ ‘{print $NF}’ 1.txt 2. 取ip地址     法一:ifconfig eth0 | grep “inet addr” | awk ‘{print $2}’ | cut -d: -f2  …

    2017-09-17
  • 滑动窗口

    数据载入 def load(path:str): with open(path) as f: for line in f: tmp = extract(line) if tmp: yield tmp else: # TODO 解析失败就抛弃,或者打印日志 continue 时间窗口分析 概念 很多数据,例如日志,都和时间相关的,都是按照时间顺序产生的。 产生…

    2017-11-04
  • Python学习之Second_Week Notes

    list列表、tuple元组、str字符串

    2017-09-23