我知道答案可能微不足道,但是如何将文件名从一个函数传递到另一个函数?文件名内置在我的函数the_reader
中,我想在我的主函数中读取它。我在下面报告这两个功能。
def the_reader(index, x, y, peak_number):
[...]
filename = ('file.txt')
return filename
mat_1 = np.array(mat,numpy.uint16)
np.savetxt(filename, mat_1, fmt='%i')
主要功能:
if __name__ == '__main__':
[...]
the_reader(index, x, y, peak_number)
然后,如果我输入print filename
,则主要出现错误:NameError: name 'filename' is not defined
.我做错了什么?
你的代码有几个问题。首先,您应该将 return 放在函数的末尾。当 python 遇到返回时,它会返回并且不会执行后面的行。
其次,你不能只返回一个值,你需要把它赋给一个变量才能使用它。
所以正确的方法是:
def the_reader(index, x, y, peak_number):
[...]
filename = ('file.txt')
mat_1 = np.array(mat,numpy.uint16)
np.savetxt(filename, mat_1, fmt='%i')
return filename
if __name__ == '__main__':
[...]
filename = the_reader(index, x, y, peak_number)