首页 > 其他分享 >函数作用域

函数作用域

时间:2024-01-14 16:24:00浏览次数:28  
标签:函数 作用域 局部变量 名字 func print 定义

'''
定义的名字可以使用区域
在函数外面定义的名字都属于全局名字
在函数里面定义的名字都属于局部名字

局部作用域和全局作用域
Python自带名字(函数名和变量名)内置区域
函数外面定义的名字:区局区域
函数里面定义的名字:局部区域
'''
# a = 1 # 定义全局变量

def func():
a = 1 # 定义局部变量
b = 1 # 定义局部变量
print(a,b)
c = func()
print(c)

def funcing():
c = 1 # 定义局部变量
d = 1 # 定义局部变量
print(c,d)
# print(a,b) # 因为c,d属于func的函数,所以不能访问到a,b
return c,d # 返回局部变量的值
e = funcing()
print(e)
# 不同函数所在局部区域不同,不能进行数据的相互访问
# func中不能访问funcing中定义的变量,funcing中不能访问func中定义的变量
# 如果代码中出现同名的名字,会有查找顺序的问题
def f3(): # 定义f3函数
a = 5 # 定义局部变量
print(a)
f3() # 调用f3函数,打印局部变量的值

标签:函数,作用域,局部变量,名字,func,print,定义
From: https://www.cnblogs.com/yaojiankui/p/17963835

相关文章

  • js delete()和 clear()函数
    constm=newMap();constfunctionKey=function(){};constsymbolKey=Symbol();constobjectKey=newObject();m.set(functionKey,"functionValue");m.set(symbolKey,"symbolValue");m.set(objectKey,"ob......
  • js Map函数
    定型数组中值的下溢和上溢不会影响到其他索引,但仍然需要考虑数组的元素应该是什么类型。定型数组对于可以存储的每个索引只接受一个相关位,而不考虑它们对实际数值的影响。以下代码演示了如何处理下溢和上溢://长度为2的有符号整数数组//每个索引保存一个二补数形式的有符号......
  • SparkSQL 自定义聚合函数[弱类型]
    本文的前提条件:SparkSQLinJava代码如下1.自定义聚合函数packagecn.coreqi.udaf;importorg.apache.spark.sql.Row;importorg.apache.spark.sql.expressions.MutableAggregationBuffer;importorg.apache.spark.sql.expressions.UserDefinedAggregateFunction;import......
  • GDB调试之函数调用栈管理(八)
    栈帧:当程序进行函数调用的时候,比如说在哪里调用,这些信息我们称之为栈帧。每一个栈帧的内容包括调用的参数,局部变量,寄存器等这些信息,这就是一个栈帧。调用栈:所有栈帧组成的信息称之为调用栈,或者我们也可以称之为调用堆栈。栈的特性是后进先出,函数调用也是这样,如果函数1里面调用了......
  • Python Flask Class类默认方法(函数)
    前言全局说明Class类默认方法(函数)一、安装flask模块二、引用模块三、启动服务模块安装、引用模块、启动Web服务方法,参考下面链接文章:https://www.cnblogs.com/wutou/p/17963563四、Class类默认方法(函数)默认方法(函数)说明备注init类被调用后,自动执行......
  • SparkSQL 自定义函数
    本文的前提条件:SparkSQLinJava参考地址:ScalarUserDefinedFunctions(UDFs)完整代码packagecn.coreqi;importstaticorg.apache.spark.sql.functions.udf;importorg.apache.spark.SparkConf;importorg.apache.spark.sql.*;importorg.apache.spark.sql.expres......
  • C++U3-第09课-递归函数的应用
    学习目标 斐波那契数列例题  我们需要求出斐波那契第n项的值是多少【思路分析】我们用递归的方式去求解,当第一项和第二项返回1,否则返回前两项的和当前为第一项和第二项返回1当前不为第一项和第二项返回前两项的和定义n并把n输入,带入到递归求解【参考代......
  • 无涯教程-LISP - 函数声明
    函数是一起执行任务的一组语句。定义函数名为defun的宏用于定义函数,defun宏需要三个参数-函数名称函数参数函数主体defun的语法是-(defunname(parameter-list)"Optionaldocumentationstring."body)让我们用简单的示例来说明这个概念。函数-示例1让我们编写......
  • #yyds干货盘点# LeetCode程序员面试金典:旋转函数
    题目给定一个长度为n的整数数组nums。假设arrk是数组nums顺时针旋转k个位置后的数组,我们定义nums的旋转函数 F为:F(k)=0*arrk[0]+1*arrk[1]+...+(n-1)*arrk[n-1]返回F(0),F(1),...,F(n-1)中的最大值。生成的测试用例让答案符合32位......
  • 虚函数:什么时候我们真的需要它?
    虚函数是函数指针的一种特殊的,可优化的语法糖,详见这个问题:https://stackoverflow.com/q/7046739/14033810作为语法糖,它所做的让语言更简单,更安全的改进是限制了函数调用的范围。函数指针不再指向每一个类型匹配的函数(或任一个函数,如果bypassC的类型检查),而是被限制在只能调用一个......