为什么我的函数不将值返回给全局变量?

Why does my function not return value to global variable?(为什么我的函数不将值返回给全局变量?)
本文介绍了为什么我的函数不将值返回给全局变量?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

为什么 print(squared) 返回 0 而不是 100?

我以为从函数返回后-变量squared的值会被赋值给同名的全局变量?

I thought that after being returned from the function - the value of the variable squared would be assigned to the the global variable with the same name?

squared = 0
def square(n):
    """Returns the square of a number."""
    squared = n**2
    print "%d squared is %d." % (n, squared)
    return squared


square(10)
print(squared)

返回:

推荐答案

将函数的结果赋值给变量:

Assign the result of the function to the variable:

squared = square(10)

这就是在函数中使用 return squared 的重点,不是吗?

This is the whole point of using return squared in the function, isn't it?

这篇关于为什么我的函数不将值返回给全局变量?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

How are parent process global variables copied to sub-processes in python multiprocessing(如何将父进程全局变量复制到子进程中)
quot;UnboundLocalError: local variable #39;x#39; referenced before assignmentquot; But it#39;s a global variable(Unound LocalError:局部变量在赋值之前被引用,但它是全局变量)
Problems with global variables in Python(在Python中使用全局变量的问题)
Getting error when I try to print a global variable in a function in Python3(尝试在Python3中的函数中打印全局变量时出错)
How do you initialize a global variable only when its not defined?(如何仅在全局变量未定义时才对其进行初始化?)
Making global variable accessible from every process(使全局变量可从每个进程访问)