所以我有一个文件,我们将其命名为main.py
在其中,我导入了一个外部文件,我们称之为ext.py
现在让我们说这些是ext.py的内容:
def how():
tangerine = 1
让我们说这些是main.py的内容:
import ext
print #Not sure what or how
我想知道的是如何通过主文件打印出tangerine变量。 这样的事情:print ext.how()。tangerine? 如果我输入ext.tangerine它不起作用,因为只在how()函数中定义了tanger。
请提供帮助,因为我真的需要它!
答案 0 :(得分:4)
使用全局的替代方法 - 从函数中返回tangerine的值 - :
def how():
tangerine = 1
return tangerine
在main.py中:
import ext
print ext.how()
答案 1 :(得分:1)
你应该使用一个类。
def how():
tangerine = 1
将始终具有值1.如果您可以像其他海报一样全局访问它,则可以在全局命名空间中访问该变量,这意味着每次修改方法外的变量时,函数的功能可能会受苦,因为它取决于“全球国家”。很可能发生不想要的和坏的事情。
使用类/对象并不困难:
class Know(object):
def __init__(self, t):
self.tangerine = t
def how(self):
self.tangerine += 1
iknow = Know(0)
iknow.how()
youknow.Know(9)
youknow.how()
print youknow.tangerine
>>> 10
print iknow.tangerine
>>> 1