返回顶部
首页 > 资讯 > 后端开发 > Python >python 之 函数 2
  • 497
分享到

python 之 函数 2

函数python 2023-01-31 00:01:16 497人浏览 八月长安

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

摘要

5.36 命名关键字 什么是命名关键字参数? 格式:在*后面参数都是命名关键字参数 特点: 1 必须被传值 2 约束函数的调用者必须按照key=value的形式传值 3 约束函数的调用者必须用我们指定的key名 def foo(x,y,

5.36 命名关键字

什么是命名关键字参数? 格式:在*后面参数都是命名关键字参数 特点: 1 必须被传值 2 约束函数的调用者必须按照key=value的形式传值 3 约束函数的调用者必须用我们指定的key名

 def foo(x,y,*,z):
    print(x,y,z)
foo(1,2) # z必须被传值
foo(1,2,3) # z必须以key=value的形式传值
foo(1,2,aaa=3) #必须以 z 传值
foo(1,2,z=3) # 1 2 3

5.4 函数嵌套调用

函数的嵌套调用:在函数内又调用了其他函数

def max2(x,y):
    if x > y:
        return x
    else:
        return y

def max3(x,y,z):
    res1=max2(x,y)
    res2=max2(res1,z)
    return res2

print(max3(11,199,2))

5.5 函数名称空间与作用域

5.51 名称空间

名称空间:存放名字与值绑定关系的地方

名称空间分为三类:

1 内置名称空间:存放python解释器自带的名字,在解释器启动时就生效,解释器关闭则失效

2、全局名称空间:文件级别的名字,在执行文件的时候生效,在文件结束或者在文件执行期间被删除则失效

x=1
def func():    
   name='eGon'
del func
a = 10
def fun():
  print(a)
fun()
print(a)

3、局部名称空间:存放函数内定义的名字(函数的参数以及函数内的名字都存放于局部名称空间),在函数调用时临时生效,函数结束则失效

def fun():   
a = 10    
print(a)
fun()
print(a)    # a已经不存在了..

加载顺序:内置名称空间 ----》全局名称空间 -----》局部名称空间 查找名字:局部名称空间 ----》全局名称空间 -----》内置名称空间

5.52 作用域

全局作用域:包含的是内置名称空间与全局名称空间的名字 特点: 1、在任何位置都能够访问的到 2、该范围内的名字会伴随程序整个生命周期

局部作用域:包含的是局部名称空间的名字 特点: 1、只能在函数内使用 2、调用函数时生效,调用结束失效

5.6 函数对象

5.61 函数对象的作用

1、可以被引用

 x=1
y=x
def bar():
    print('from bar')
f=bar
f()

2、func可以当作参数传给x

 def bar(x):
    print(x)
    x()
bar(func)
 def bar():
    print('from bar')

def wrapper(func): #func=bar
    func() #bar()

wrapper(bar)

3、func还可以当作返回值

 def bar(x): # x=func
    return x #return func
res=bar(func) #res=func
print(res)
res()

4、可以当作容器类型的元素

 def get():
    print('from get')
def put():
    print('from put')
l=[get,put]
l[0]()

5.62 函数对象应用

利用函数作容器类型元素实现注册:
def auth():
   print('登陆。。。。。')
def reigster():
   print('注册。。。。。')
def search():
   print('查看。。。。')
def transfer():
   print('转账。。。。')
def pay():
   print('支付。。。。')

dic={
   '1':auth,
   '2':reigster,
   '3':search,
   '4':transfer,
   '5':pay
}
def interactive():
   while True:
       print("""
      1 认证
      2 注册
      3 查看
      4 转账
      5 支付
      """)
       choice=input('>>: ').strip()
       if choice in dic:
           dic[choice]()
       else:
           print('非法操作')

interactive()

5.7 闭包函数

定义在函数内部的函数, 并且该函数包含对外部函数作用域中名字的引用,该函数就称为闭包函数

闭:指的是定义在函数内部的函数 作用域关系 在函数定义阶段就规定死了,与调用位置无关

 def outter():
    x=2
    def inner():
        print(x)
    return inner

f=outter() #f=inner
f()

5.71 为函数体传值的方式

方式一:将值以参数的形式的传入

import requests
def get(url):
   response=requests.get(url)
   if response.status_code == 200:
       print(response.text)
get('https://www.baidu.com')

方式二:以闭包函数的方式调用

import requests
import time
def outter(url): #url='Https://www.baidu.com'
   def get():
       response=requests.get(url)
       if response.status_code == 200:
           print(response.text)
   return get
baidu=outter('https://www.baidu.com')
baidu()
print('=====================>')
time.sleep(3)
baidu()

--结束END--

本文标题: python 之 函数 2

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

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

猜你喜欢
  • python 之 函数 2
    5.36 命名关键字 什么是命名关键字参数? 格式:在*后面参数都是命名关键字参数 特点: 1 必须被传值 2 约束函数的调用者必须按照key=value的形式传值 3 约束函数的调用者必须用我们指定的key名 def foo(x,y,...
    99+
    2023-01-31
    函数 python
  • python 函数(2)
    一、内容回顾 1.面试题相关: 1.py2和py3的区别 2.运算符的计算 :3 or 9 and 8 3.字符串的反转 4.is和==的区别 5.v1 = (1) v2 = 1 v3 = (1,)有什么区别 v1 、v2都是数...
    99+
    2023-01-31
    函数 python
  • Python-2 eval函数
    x = 1result = "x+1"result = eval(result)print(result)》》2 Python3中字符串不能计算结果,eval函数将字符串当成有效Python表达式来求值,并返回计算结果。 与之对应的repr...
    99+
    2023-01-31
    函数 Python eval
  • python的函数学习2
    用来存放名字的地方,有三种名称空间:内置名称空间,全局名称空间,局部名称空间。 1 比如执行test.py: 2 3 python test.py 4 1、python解释器先启动,因而首先加载内置名称空间 5 2、执行test.p...
    99+
    2023-01-30
    函数 python
  • python内置函数2-bytearra
    Help on class bytearray in module __builtin__:class bytearray(object) |  bytearray(iterable_of_ints) -> bytearray. | ...
    99+
    2023-01-31
    函数 python bytearra
  • 函数(2)
    6. 函数的声明和定义 6.1 函数声明: 告诉编译器有一个函数叫什么,参数是什么,返回类型是什么。但是具体是不是存在,函数 声明决定不了。 2. 函数的声明一般出现在函数的使用之前。要满足先声明后使用。 3. 函数的声明一般要放在头文件...
    99+
    2023-09-06
    c语言 学习 开发语言
  • Python之禅---2、python介
    1,、python的由来     python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,Guido开始写能够解释Python语言语法的解释器。Python这个名字,来自Guido所挚爱的电视剧Mo...
    99+
    2023-01-31
    Python python
  • Python之函数
    Python函数分为内置函数和自定义函数。内置函数可以理解为一些类的方法的快捷方式,供我们创建对象时来调用内置函数大概有以下这么多Python内置变量如何查看Python内置变量?print vars(){'__builtins__': &...
    99+
    2023-01-31
    函数 Python
  • MySQL函数2
    聚合函数(只有一个结果) 聚合函数的介绍 聚合函数的常用类型(都不含空值) AVG() SUM() MAX() MIN() COUNT() AVG()和SUM() AVG:求平均 SUM():求和 #求平均工资和工资总和 SEL...
    99+
    2014-06-15
    MySQL函数2
  • Python之lambda函数
    匿名函数lambda:是指一类无需定义标识符(函数名)的函数或子程序。 lambda 函数可以接收任意多个参数 (包括可选参数) 并且返回单个表达式的值。 语法: lambda [arg1 [,arg2,.....argn]]:expre...
    99+
    2023-01-31
    函数 Python lambda
  • python之函数isinstance
    1.判断变量是否是这个类型 >>> a=1 >>> isinstance(a,int) True >>> isinstance(a,float) ...
    99+
    2023-01-31
    函数 python isinstance
  • Python 函数之seek
    1、seek函数  file.seek(off, whence=0):从文件中移动off个操作标记(文件指针),正往结束方向移动,负往开始方向移动。如果设定了whence参数,就以whence设定的起始位为准,0代表从头开始,1代表当前位...
    99+
    2023-01-31
    函数 Python seek
  • python之路,Python基础篇2(
    一、.pyc是个什么鬼: pyc文件其实是PyCodeObject的一种持久化保存方式。 二、数据类型 1、数字: 2 是一个整数的例子。 长整数 不过是大一些的整数。 3.23和52.3E-4是浮点数的例子。E标记表示10的幂...
    99+
    2023-01-31
    之路 基础 python
  • 代码详解Python的函数基础(2)
    目录1.函数参数2.递归函数总结1.函数参数 # 1.位置参数:调用函数时,传入的值需要按照位置顺序传入 # 实例:求x的n次方 def xPowN(x,n): # 传...
    99+
    2024-04-02
  • python——Matplotlib之fill_between函数
    Matplotlib是Python提供的一套基于NumPy的绘图工具包,用Python实现与MATLAB相似的命令API,十分适合交互式绘制图表,成为Python中应用非常广的绘图工具包之一。 在对数据可视化时,为了突出某一段数据需要对部分...
    99+
    2023-10-05
    python matplotlib 开发语言
  • Python之函数进阶
    一.形参的动态参数: 动态参数,用于参数不确定时用. 格式: def fun (*args) fun(args) 1. 动态接收位置参数:动态参数必须在位置参数后.列子1.假如参数不确定时,如下的列子,每人饭量不一样,吃的种类不一样,此时...
    99+
    2023-01-30
    进阶 函数 Python
  • python之初识函数
      函数: 函数是对功能或动作的封装. 函数的语法和定义: def 函数名(): 函数体 调用函数: 函数名()   函数返回值: return : 返回 def yue(): print("拿出手机") ...
    99+
    2023-01-30
    函数 python
  • python语法之函数
    函数:   将特定功能代码编写在一个函数里   便于阅读和复用   对一组表达特定功能表达式的封装   使程序模块化 python内置函数:   input(),print(),eval()... 函数定义 函数语法格式:   de...
    99+
    2023-01-30
    语法 函数 python
  • Python之内置函数
    ''' 内置函数 :     作用域相关(2) :         locals : 返回当前局部作用域内的所有内容         globals : 返回全局作用域内的所有内容     基础数据类型相关(38) :         和数...
    99+
    2023-01-31
    函数 Python
  • python基础之函数
    函数: # 什么是函数:一系列python语句的组合,可以在程序中运行一次或者多次 # 一般是完成具体的独立的功能 # 为什么要使用函数 # 代码的复用最大化以及最小化冗余代...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作