首页 > 其他分享 >11 函数参数 global nonlocal 强制修改全局变量

11 函数参数 global nonlocal 强制修改全局变量

时间:2024-09-25 22:34:24浏览次数:7  
标签:11 name global nonlocal 函数参数 func print def

global/nonlocal强制修改全局变量

子作用域中只能 找到父级中的值 ,默认无法重新为父级的变量进行赋值。(global/nonlocal可以强制做)

# #####################
name = 'oldboy'
def func():
    name = 'alex' # 在自己作用域再创建一个这样的值。
    print(name)
func()
print(name)



# #####################
name = [1,2,43]
def func():
    name.append(999)
    print(name)
func()
print(name)

# ###################### 如果非要对全局的变量进行赋值
# 示例一
name = ["老男孩",'alex']
def func():
    global name
    name = '我'
func()
print(name)
# 示例一
name = "老男孩"
def func():
    name = 'alex'
    def inner():
        global name
        name = 999
    inner()
    print(name)
func()
print(name)


name = "老男孩"
def func():
    name = 'alex'
    def inner():
        global name
        name = 999
    inner()
    print(name)
func()
print(name)

# ############################## nonlocal
name = "老男孩"
def func():
    name = 'alex'
    def inner():
        nonlocal name # 找到上一级的name
        name = 999
    inner()
    print(name)
func()
print(name)

标签:11,name,global,nonlocal,函数参数,func,print,def
From: https://www.cnblogs.com/jhchena/p/18432427

相关文章

  • [GYM103119K][2020 ICPC Asia Macau] Candy Ads 题解
    题意简述有\(n\)个广告,每个广告在一个时间段内占据二维平面的矩形,\(m\)个约束表示两个广告至少有一个要被选择,选择若干广告,满足所有约束且同时刻不能有重叠的广告。Kosaraju算法流程在正图上跑一遍DFS,给每个位置打上时间戳从时间戳大到小枚举点,在反图上跑DFS,这个时候对......
  • bfs 与优先队列————洛谷p1126(历经两个小时总算AC了,哭晕)
    机器人搬重物题目描述机器人移动学会(RMI)现在正尝试用机器人搬运物品。机器人的形状是一个直径\(1.6\)米的球。在试验阶段,机器人被用于在一个储藏室中搬运货物。储藏室是一个\(N\timesM\)的网格,有些格子为不可移动的障碍。机器人的中心总是在格点上,当然,机器人必须在最短的时......
  • PAT甲级-1115 Counting Nodes in a Binary Search Tree
    题目 题目大意给定节点个数,以及每个节点的值,要求构造一棵二叉排序(搜索)树,并按照规定格式输出最后一层和倒数第二层的节点个数。思路二叉排序树的构造方法是递归,但思路类似于二分查找。逐个将n个节点插入到二叉排序树中,插入完成也就构造完成了。插入节点时,如果该节点值大于......
  • 11 列表 独有功能
    1、append最常用在列表的最后追加一个元素users=[]users.append('alex')print(users)"""示例一:users=[]whileTrue:name=input('请输入姓名:')users.append(name)print(users)""""""示例二:#录入......
  • 110.109 Introductory Financial Accounting
    110.109Introductory FinancialAccountingAssessment3 BookletDistanceandInternalSemester2– 2024IMPORTANT INFORMATIONThis is an electronic assessment and must be completed in the “Assessment 3 Answer Workbook” – Excel temp......
  • P3311 [SDOI2014] 数数
    参考题解做法。题目思路数位dp+AC自动机好题。直接往下递归,dfs(u,ver,limit,st)表示目前在数字\(n\)的第\(u\)位进行讨论,\(ver\)表示当前在AC自动机上的节点,\(limit\)是是否步步紧逼\(n\),只要位数不足\(n\)的位数或者有一位小于\(n\)的那一位就不叫步步......
  • 如何解决win11扩展属性不一致问题(华硕天选3笔记本)
    1.笔者出现该问题的原因:今天上午笔者被迫更新win11,在更新途中,笔者突然好奇更新强制关机会有什么问题呢?这一关重新启动后就出问题了,发现的问题如下:1.1:点击这种类型(就是图标右下角有个盾牌框)的文件会卡一下然后弹出错误框(大概内容)"C:\Users\ASUS\Desktop\*******"文件扩展......
  • 【2024潇湘夜雨】WIN 11_IoT_Ent_LTSC_2024_24H2.26100.1876软件选装纯净特别版9.25
    【系统简介】=============================================================1.本次更新母盘来自WIN11_IoT_Ent_LTSC_2024_24H2.26100.1876.2.全程离线精简、无人值守调用优化处理制作。部分优化适配系统可能要重启几次,即使显示适配失败也不要在意,可能部分优化不适用。3.OS版本号......
  • CF1119H Triple 题解
    DescriptionSK酱送给你了一份生日礼物。礼物是\(n\)个三元组\((a_i,b_i,c_i)\)和四个正整数\(x,y,z,k\)。你利用这\(n\)个三元组填充了\(n\)个数组,其中第\(i\)个数组中有\(x\)个\(a_i\),\(y\)个\(b_i\),\(z\)个\(c_i\)(所以第\(i\)个数组长度为\((x+y+z)\)。......
  • CS1112 Specific programming constructs
    CS1112Fall2024Project2dueWednesday9/25at11pmObjectivesCompletingthisprojectwillsolidifyyourunderstandingoffor-loops,while-loops,andnestedloops.Thecomputationalthemeofthisprojectissimulation,withproblem1usingrandomnessa......