如何从python的def函数中获取数据
试图简化我的脚本中的许多重复读取和写入操作,但我不知道如何从中获取数据def readfile
。
def writefile(FILE, DATA): file = open(FILE, "w")
X = str(DATA)
file.write(X)
file.close()
def readfile(FILE):
file = open(FILE, "r")
readvar = file.read()
file.close()
readfile("BAL.txt")
print(readvar)
我希望存储的值BAL.txt
会返回,但始终表示readvar
未定义。我只是在运行的函数中定义了它。
回答:
---------------------------------------------------------------------------NameError Traceback (most recent call last)
<ipython-input-6-f80fb5b2da05> in <module>
14
15 readfile("test.txt")
---> 16 print(readvar)
NameError: name 'readvar' is not defined
回答:
- 在Python中,通常无法从外部访问函数内部的变量(查找变量作用域)。
- 您可以
return
在函数的末尾放置一条语句以返回变量(readvar
在这种情况下)(并且您几乎总是应该这样做)。 - 然后,您可以将返回的参数(
readvar
)分配给新变量(例如rv
)。 - 您也可以使用相同的名称。
其他资源:
- Python范围和命名空间
- 真正的Python:定义自己的Python函数
def writefile(FILE, DATA):
file = open(FILE, “w”)
X = str(DATA)
file.write(X)
file.close()
def readfile(FILE):
file = open(FILE, “r”)
readvar = file.read()
file.close()
return readvar
rv = readfile(“BAL.txt”)
print(rv)
以上是 如何从python的def函数中获取数据 的全部内容, 来源链接: utcz.com/qa/424646.html