关于函数外部的变量重新赋值的问题。

来源:8-9 变量作用域

qq_洌_0

2020-11-30

代码1:

c = 50  

def add(x, y):
    c = x + y
    print(c)

add(1, 2)
print(c) 

打印的结果
#3
#50

问题:
为什么代码一种的c = x + y并不是对c的重新赋值,而是新建一个变量C。那如何改变外部c的值,return出去么?

写回答

1回答

7七月

2020-11-30

这个是Python的特性,因为Python没有定义变量这个过程。而且函数C的作用域和全局C不同,所以这样无法影响到全局的C。关于这个后面课程应该有讲,加一个nolocal关键字试试

0
0

Python3.8系统入门+进阶 (程序员必备第二语言)

语法精讲/配套练习+思考题/原生爬虫实战

14447 学习 · 4438 问题

查看课程