各位大虾好!我有一个需求,假设我目前有一个脚本a.py,内容如下:
#!/usr/bin/env python
#coding=utf-8
def aaa():
Mode = "1"
KeyWord = "hello"
return Mode,KeyWord
def bbb(p):
m=1
n=2
z=m+n+p
return z
print (aaa())
现在有两个问题:
1)有一个b.py想要获取a.py里的Mode和m,n应该怎么做?
2)为什么下面这个脚本,执行效果是('1', 'hello')?而不是
('1', 'hello')
103
#!/usr/bin/env python
#coding=utf-8
from a import aaa,bbb
aaa()
bbb(100)
你这个好初级.
第二个问题的答案
('1', 'hello')
是print (aaa())
打印出来的,来自于a.py
,你的b.py虽然执行了但是并没有输出结果(print
).python中import
一个包会先运行这个包也就是a.py
.第一个问题:做不到.外部无法获得作用于函数内部作用域的变量,你只能定义在外边,或者使用类,或者使用全局变量.
这时候可以从另一个文件
from thatfile import a