python基础--函数作用域

name="alex"
def foo():
    name="tang"
    #print(name)
    def bar():

        print(name)
    return bar#函数名代表得就是一个函数的内存地址
# a=foo()
# print(a)
# print(a())
foo()()#由于函数bar包含在函数foo()中,所以bar会在自身查找打印的变量,如果没找到去往上一级查找,最后查找全局#python编译器是按照顺序加载的,在调用foo()时函数bar被加载,所以必须要按照加载顺序调用函数,return返回的是函数名及函数在内存中的地址,所以可以直接使用foo()()调用

# def test1():
#     print(‘in the test1‘)
#     return 1
#
# def test():
#     print("in the test")
#     return test1()
#
# #print(test)
# a=test()
# print(a)

# def test1():
#     print(‘in the test1‘)
#     #return 1
#
# def test():
#     print("in the test")
#     return test1
#
# #print(test)
# res=test()
# print(res())

原文地址:https://www.cnblogs.com/tangcode/p/10984094.html

时间: 2024-11-03 23:24:55

python基础--函数作用域的相关文章

Python 5.函数作用域与递归(基础篇)

本章大纲: -变量作用域- 变量由作用范围限制 两种不同的作用域: 全局(global):在函数外部定义 局部(local):在函数内部定义 变量的作用范围 全局变量 在整个程序范围都有效 全部变量可以在局部范围里面使用 局部变量在局部范围内可以使用 局部变量无法在全局范围内使用 LEGB原则 L(Local)局部作用域 E(Enclosing function locale)外部嵌套函数作用域(命名空间) G(Global module)全局变量,函数定义所在模块的命名空间 B(Buildin

python基础——函数对象和闭包

关于函数对象和闭包 闭包(closure)是函数式编程的重要的语法结构.不同的语言实现闭包的方式不同.Python以函数对象为基础,为闭包这一语法结构提供支持的 (我们在特殊方法与多范式中,已经多次看到Python使用对象来实现一些特殊的语法).Python一切皆对象,函数这一语法结构也是一个对象.在函数对象中,我们像使用一个普通对象一样使用函数对象,比如更改函数对象的名字,或者将函数对象作为参数进行传递. 一.函数对象: 1.函数可以当参数传递 示例: #把函数当成参数传递 def foo()

python基础-函数_递归_内置函数

一 数学定义的函数与python中的函数 二 为何使用函数 背景提要 三 函数和过程 四 函数参数 五 局部变量与全局变量 六 前向引用之'函数即变量' 七 嵌套函数 八 递归 九 匿名函数 十 函数式编程 十一 内置函数 十二 本节作业 一.数学定义的函数与python中的函数 初中数学函数定义:一般的,在一个变化过程中,如果有两个变量x和y,并且对于x的每一个确定的值,y都有唯一确定的值与其对应,那么我们就把x称为自变量,把y称为因变量,y是x的函数.自变量x的取值范围叫做这个函数的定义域

Python 全栈开发四 python基础 函数

一.函数的基本语法和特性 函数的定义 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的.函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可. python中函数的分类 内置函数 自定义函数 特性: 减少重复代码 使程序有更好的扩展性 让程序更容易维护 定义一个函数 你可以定义一个由自己想要功能的函数,以下是简单的规则: 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号(). 任何传入参数和自变量必须放在圆括号中间.圆

Python基础-函数(六)

一.函数介绍 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.Python提供了许多内建函数,比如print().但你也可以自己创建函数,这被叫做用户自定义函数. 如果在开发程序时,需要某块代码多次,但是为了提高编写的效率以及代码的重用,所以把具有独立功能的代码块组织为一个小模块,这就是函数. 二.定义函数 定义函数: 1.函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 (). 2.任何传入参数和自变量必须放在圆括号中

Python基础函数、递归、内置函数

一.数学定义中的函数与Python中的函数 初中数学定义:一般的,在一个变化过程中,如果有两个变量x和y,并且对于x的每一个确定值,y都有唯一确定的值与之对应,那么我们就把x称为自变量,把y称为因变量,与是x的函数.自变量x的取值范围叫做这个函数的定义域. 例如:y=2*x python中函数的定义:函数是逻辑结构化和过程化的一种编程方法. # Python中函数定义方法 def test(x): "the function definitions" x+=1 return x def

python基础函数、方法

python的函数和方法,通过def 定义: 函数的特性: 减少重复代码 使程序变的可扩展 使程序变得易维护 函数和方法的区别:函数有返回值.方法没有 语法定义: def sayhi():#函数名 print("Hello, I'm nobody!") sayhi() #调用函数 可以带参数 #下面这段代码 a,b = 5,8 c = a**b print(c) #改成用函数写 def calc(x,y): res = x**y return res #返回函数执行结果 c = cal

python基础 函数定义 返回值 参数

函数定义 1 #python中函数定义.def函数定义的关键字,fun1函数名,x为函数的形参可以有多个,多个之间用“,”隔开:return 函数返回值的关键字,python中return可以是非必要 2 def fun1(x): 3 x += 1 4 return x 函数返回值 1 # 函数返回值可以有多个,之间使用“’”分隔,返回值讲多个值组成的元组进行返回. 当无return时python会隐式return “None”,如果只返回一个值就返回这个值本身 2 def fun2(x, y)

Python基础(函数部分)-day04

写在前面 上课第四天,打卡: 加勒比海盗今天上映:端午节公司发的粽子很有范! 一.函数的基本概念 - 函数是什么?  函数,就是一个'锤子',一个具有特定功能的'锤子',使用者可以在适当的时候使用这个'锤子',而不用再去从头做一个'锤子':即可以直接拿来使用: 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率. - 不使用函数会有什么问题? 1.组织结构不清晰,可读性差: 2.代码冗余: 3.无法统一管理且维护难度大: - 函数的分类