100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > python变量查找顺序_python 函数变量查找顺序

python变量查找顺序_python 函数变量查找顺序

时间:2024-07-02 01:22:33

相关推荐

python变量查找顺序_python 函数变量查找顺序

python 函数变量的查找顺序:优先级为: 局部---> 全局---> 如果仍没找到,将引发NameError错误。

#!/usr/bin/env python

#coding:utf-8

[emailprotected]:Andy

# Date: /6/14

money = 1000

def tell_info(name):

print("%s have %d " % (name, money))

def fun():

money = 10

tell_info(‘egon‘)

fun()

# egon have 1000

# tell_info 函数在fun函数内部执行,但是仍需要回到定义的地方去查找相关变量

# 优先从局部找,局部没有找全局,因为函数字义时money=1000,而与执行位置的money=10,无关.

money = 1000

def f1():

money = 10

def tell_inform(name):

print("%s have %d " % (name, money))

tell_inform(‘egon‘)

f1()

# egon have 10

# tell_inform函数在f1内部定义,且有局部变量的定义,所以在查找变量值是找到局部即停止

# 不会再往全局找,所以此处money 最终结果为10

"""

函数作用域与该函数在哪执行无关,只与定义函数有关。不管在哪调用都会回到定义阶段去

找对应的作用域关系。查找顺序为: 局部---> 全局 --- > NameError

"""

原文:/Andy963/p/7008731.html

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。