iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python函数的进阶
  • 192
分享到

python函数的进阶

进阶函数python 2023-01-30 23:01:38 192人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

1. 动态传参 *, ** : 形参: 聚合 位置参数* -> 元组 关键字** -> 字典 实参: 打散

1. 动态传参
*, ** :
形参: 聚合
位置参数* -> 元组
关键字** -> 字典
实参: 打散
列表, 字符串, 元素 -> *
字典 -> **
形参顺序(重点):
位置, *args, 默认值, **kwargs

 

无敌传参
def func(*args, **kwargs): arguments参数 keyWord-arguments关键字参数
pass

 

2. 作用域和名称空间
名称空间: 用来存放名字(变量, 函数名, 类名, 引入的模块名)的

1. 全局名称空间: 我们在py文件中自己写的变量, 函数.....
2. 内置名称空间: 我们python解释器提供好的一些内置内容(print, input....)
3. 局部名称空间: 在我们执行函数的时候.会产生一个局部名称空间. 放的是: 函数内部的内容(变量, 函数,类...)

名称空间可能会有无数个, 局部名称空间而言. 相对是独立的.一般互不干扰

作用域:
1. 全局作用域: 内置+全局
2. 局部作用域: 局部

globals() 查看全局作用域
locals() 查看当前作用域

 

3. 函数的嵌套
在函数中声明函数
在内部函数中使用变量的时候, 查找顺序: 先找自己 -> 上一层 -> 上一层..全局 -> 内置

 1 def func0():
 2     a = 50
 3     def func1():
 4         a = 10  # 局部
 5         def func2():
 6             nonlocal a
 7             a += 10  # a = a +10 Python不让这么干
 8             # a = 30
 9             print('func2', a)
10         func2()
11         print(a)
12     func1()
13     print(a)
14 func0()
15 flag = False

 

4. nonlocal和global关键字
global: 在局部引入全局变量

 1 a = 10
 2 def func():
 3     def inner():
 4         # 慎用
 5         global a  # global 表示从全局把一个变量引入到局部,后面使用的a都是全局变量
 6         a += 10  # ?? a = a+10 # 现在的a是全局的,你现在视图改变全局变量 +global可改
 7         print('里面的打印', a)
 8 
 9     inner()
10 func()
11 print('外面的打印', a)

 


nonlocal: 在局部...内层函数引入外层离他最近的那个变量.

 1 nonlocal 在局部,寻找离它最近的外层的一个变量
 2 a = 50
 3 def func1():
 4     a = 10 # 局部
 5     def func2():
 6         nonlocal a
 7         a += 10 # a = a +10 python不让这么干
 8         # a = 30
 9         print('func2', a)
10     func2()
11     print(a)
12 func1()
13 print(a)

 

--结束END--

本文标题: python函数的进阶

本文链接: https://www.lsjlt.com/news/180437.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python函数的进阶
    1. 动态传参 *, ** : 形参: 聚合 位置参数* -> 元组 关键字** -> 字典 实参: 打散...
    99+
    2023-01-30
    进阶 函数 python
  • Python之函数进阶
    一.形参的动态参数: 动态参数,用于参数不确定时用. 格式: def fun (*args) fun(args) 1. 动态接收位置参数:动态参数必须在位置参数后.列子1.假如参数不确定时,如下的列子,每人饭量不一样,吃的种类不一样,此时...
    99+
    2023-01-30
    进阶 函数 Python
  • python函数进阶之闭包函数
    目录闭包函数什么是闭包函数判断是否是闭包函数\__closure__cell_contents闭包函数的特点闭包函数的意义闭包函数 什么是闭包函数 如果内函数使用了外函数的局部变量,...
    99+
    2024-04-02
  • python3--函数进阶
    例子def func(a,b,c,d,e,f,g):    passprint(func(a, b , c, d, e, f, g))如果再加30个参数呢?,在后面继续添加?有没有万能的参数,可以代表一切参数呢?*arg...
    99+
    2023-01-30
    进阶 函数
  • 关于Python函数参数的进阶用法
    目录1、关键字参数和位置参数(1)关键字参数(2)位置参数2、接受任意数量的参数(1)接受任意数量的位置参数 (2)接受任意数量的关键字参数(3)同时接受任意数量的位置参数和关键字参...
    99+
    2024-04-02
  • day 10 函数的进阶
    动态传参 (重点)  *    ** 形参  * args在形参位置, *表示不定参数--接受的是位置参数   接受到的位置参数的动态传参:  都是元组 形参的顺序: 位置  *args 默认值  **kwargs   以后写参数,可以随...
    99+
    2023-01-30
    进阶 函数 day
  • python高阶函数
    高阶函数定义:1.函数接收的参数是一个函数名;2.函数返回的是一个函数名;只要满足上述条件中的任意一个条件的函数均属于高阶函数 例如:1.函数接收的参数为函数名2.函数返回的结果为函数名3.函数接收的参数为函数名,函数返回的结果为函数名...
    99+
    2023-01-31
    高阶 函数 python
  • Python 高阶函数
    高阶函数:简单来讲,一个函数可以接收另一个函数来作为参数,这样的函数称之为高阶函数 map函数 会根据提供的函数对指定序列做映射,也就是说将函数作用在指定序列 语法为 map(function,interable...) ...
    99+
    2023-01-30
    高阶 函数 Python
  • Python函数进阶与文件操作详情
    目录一、作业回顾1、格式化输出与%百分号2、字符串切片3、字典的定义二、引用变量与可变、非可变类型1、引用变量聊聊变量在内存底层的存储形式如何验证Python中变量的引用关系把一个变...
    99+
    2024-04-02
  • Python函数进阶的使用方法实例分析
    今天小编给大家分享一下Python函数进阶的使用方法实例分析的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、函数的命名空间...
    99+
    2023-06-30
  • python 高阶函数:Decorato
    装饰器:原函数基础 ------> 动态添加功能一、不带参数的decorator#decorator封装def log(func):    def wrapper(*args, **kw):        print 'call %s...
    99+
    2023-01-31
    高阶 函数 python
  • Golang函数的进阶使用指南
    go 函数的进阶用法包括:闭包:可访问外部变量的内部函数,用于附加状态或延迟执行。变参函数:接收可变数量相同类型参数的函数,表示为 ...t 切片。递归函数:调用自身的函数,用于解决可分...
    99+
    2024-04-15
    函数 golang
  • javascript之函数进阶详解
    目录函数定义方式函数的调用(6种)this指向问题严格模式高阶函数闭包递归:函数里面调用自己,需要有结束条件函数定义方式 function fn(){}//命名函数 var ...
    99+
    2024-04-02
  • Python基础之函数参数与返回值进阶
    参数作用:如果外界希望在函数内部处理数据,就可以将数据作为参数传入函数内部; 返回值作用:如果希望一个函数函数执行完成后,向外界报告函数的执行结果,就可以使用函数的返回值。 函数的返回值 进阶 利用元组返回多个函数值 可以用元组让函数返回...
    99+
    2023-01-31
    进阶 函数 返回值
  • JavaScript中函数进阶是怎样现进行的
    JavaScript中函数进阶是怎样现进行的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。全局作用域· 全局作用域是最大的作用域·&...
    99+
    2024-04-02
  • python进阶
    一直以来有写博客的习惯,也是为了给自己做个记录,备以后查询,但是记录的很乱 基本上都是工作中,遇到的一些问题或知点,并且也不连惯,今天一篇列表相关,明天一篇线程相关 最近看博客有了一定的访问量,就想整理一下博客中一些知识点,这样也方便大家...
    99+
    2023-01-30
    进阶 python
  • Python基础【高阶函数】
    map(fun,seq) 将seq中的元素依次作为参数传入fun,返回由函数返回值组成的新的列表。 python3:返回一个map对象 python2:返回列表 可以用list将对象转换为列表进行调用 代码: def f...
    99+
    2023-01-31
    高阶 函数 基础
  • Python常见内置高阶函数即高阶函数用法
    目录1.什么是高阶函数?2.高阶函数-map、filter、reduce2.1map函数2.2filter函数2.3reduce函数1.什么是高阶函数?   高阶函数:一个函数可...
    99+
    2024-04-02
  • python之高阶函数和匿名函数
    map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。 1 def func(x): 2 return x*x 3 4 r = ma...
    99+
    2023-01-30
    函数 高阶 python
  • Oracle进阶DECODE函数使用详解
    DECODE含义 decode(条件,值1,返回值1,值2,返回值2,…值n,返回值n,缺省值) 这个是decode的表达式,具体的含义解释为: IF 条件=值1 THEN   ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作