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

10 函数作用域

时间:2024-09-25 22:34:08浏览次数:10  
标签:10 函数 父级 作用域 func print def

py文件:全局作用域

函数:局部作用域

a = 1
def s1():
    x1 = 666
    print(x1)
    print(a)
    print(b)

b = 2
print(a)
s1()
a = 88888
def s2():
    print(a,b)#此时a为8888
    s1() #此时s1中的a为:8888

s2()

总结

一个函数是一个作用域

作用域中查找数据规则:优先在自己的作用域找数据,自己没有就去 "父级" -> "父级" -> 直到全局,全部么有就报错。注意:父级作用域中的值到底是什么?

  • 参数
    • 调用(执行)函数时,传参:位置参数 > 关键字参数
    • 定义函数:
      • def func(a)
      • def func(a,b=None) # 对于默认值,如果是可变类型,----> 坑
      • def func(*args,**kwargs)
  • 作用域
    • 函数为作用域
    • 自己 > 父级 > 父级 > 全局 【读/修改(可变)】
    • 重新赋值:
      • global
      • nonlocal
#示例1
def func():
    x = 9
    print(x)
func()
print(x)

#示例2
x = 10
def func():
    x = 9
    print(x)

func()

标签:10,函数,父级,作用域,func,print,def
From: https://www.cnblogs.com/jhchena/p/18432426

相关文章

  • 03 函数基本结构
    3、对于函数编程本质:将N行代码拿到别处并给他起个名字,以后通过名字就可以找到这段代码并执行。场景:代码重复执行。代码量特别多超过一屏,可以选择通过函数进行代码的分割。3、函数的基本结构#函数的定义def函数名():#函数内容pass#函数的执行函数名()......
  • 02 函数编程案例 邮件发送
    2、函数式编程-邮件发送defsend_email(): importsmtplibfromemail.mime.textimportMIMETextfromemail.utilsimportformataddrmsg=MIMEText('老板,我想演男一号,你想怎么着都行。','plain','utf-8')msg['From']=formataddr......
  • 红米ac2100路由器刷breed和openwrt教程
    刷入Breed参考教程:https://www.right.com.cn/forum/forum.php?mod=viewthread&tid=4066963&highlight=ˢbreedhttps://www.bilibili.com/video/BV1114y1X7TA/?vd_source=4866b7cfde4a08de2ba06a6ef4c96869固件以及资源下载:https://yecss.lanzoul.com/i1N0H2aup7te正文:1.事......
  • 10.解析解方法推导线性回归——不容小觑的线性回归算法
    引言线性回归是许多复杂机器学习模型的基础。作为一种基本的机器学习方法,线性回归提供了清晰的思路和工具,通过理解其推导过程,可以更好地掌握机器学习的基本原理和模型设计。通过阅读本篇博客,你可以:1.学会如何用解析解的方法推导线性回归的最优解2.了解如何判定损失函数是凸......
  • [GYM103119K][2020 ICPC Asia Macau] Candy Ads 题解
    题意简述有\(n\)个广告,每个广告在一个时间段内占据二维平面的矩形,\(m\)个约束表示两个广告至少有一个要被选择,选择若干广告,满足所有约束且同时刻不能有重叠的广告。Kosaraju算法流程在正图上跑一遍DFS,给每个位置打上时间戳从时间戳大到小枚举点,在反图上跑DFS,这个时候对......
  • 林史·语其十(101-105)【上半更新】
    鉴于收集素材与发布素材之间有一定延迟,此后林史一章分两次更新先把存的旧东西发一下#101故事源于joke3579学长博客里一份证明,涉及到求不定积分的如果你不知道啥是不定积分,你只需要知道它是导数逆运算就行了学长博客里写的是:\(A\)求导后等于\(B\)HDK:\(A\)是\(B\)的......
  • 10 列表 List 公共功能
    1、len获取列表长度。#获取长度users=["李邵奇","奇航",99]val=len(users)print(val)#32、索引获取一个字符。#索引users=["李邵奇","奇航",99]val=users[0]#"李邵奇"print(val)3、切片获取一段字符串(子序列)。users=["李邵奇",&q......
  • C/C++语言基础--C++类数据、静态与非静态、常成员、友员、成员变量与函数指针等相关知
    本专栏目的更新C/C++的基础语法,包括C++的一些新特性前言通过前面几节,我们介绍了C++的类与对象、构造与析构函数、拷贝等相关知识,这一篇将详细介绍了C++的成员变量相关的知识点与扩展C语言后面也会继续更新知识点,如内联汇编;本人现在正在写一个C语言的图书管理系统,1000多......
  • 《深度学习》—— 神经网络中常用的激活函数
    文章目录1.Sigmoid激活函数2.Softmax激活函数3.ReLU激活函数4.LeakyReLU激活函数5.ELU激活函数6.Tanh激活函数激活函数(ActivationFunction)是在人工神经网络的神经元上运行的函数,负责将神经元的输入映射到输出端。它在神经网络中扮演着至关重要的角色,主......
  • 10min速览文献|乳腺癌多中心多组学研究|Multicenter radio-multiomic analysis for pr
    论文链接:https://www.nature.com/articles/s41698-024-00666-y期刊:npjPrecisionOncology团队:复旦肿瘤数据集:多中心,乳腺癌患者方法:放射组学、基因组学、转录组学、代谢组学“尽管深度学习放射组学目前具有卓越的预测性能,但团队的研究更喜欢放射组学,因为它具有标准化和可重复......