我有一个main.py
文件,其中包含如下代码块:
import urtc
import machine
rtc = urtc.DS3231(machine.I2C(scl=machine.Pin(0), sda=machine.Pin(2)))
from func import * #line 4
现在,在第4行导入的func.py
文件有如下代码:
def current_time():
import urtc
import machine
rtc = urtc.DS3231(machine.I2C(scl=machine.Pin(0), sda=machine.Pin(2)))
return urtc.tuple2seconds(rtc.datetime())
在main.py
中,我已经导入了urtc
和machine
并定义了rtc
。是否可以从函数current_time()
中删除这3行:
import urtc
import machine
rtc = urtc.DS3231(machine.I2C(scl=machine.Pin(0), sda=machine.Pin(2)))
这似乎是多余的,因为我已经在main.py
全局中有了它们。如何从main.py
全局使用它们,而不是在函数current_time()
中再次导入它们?你知道吗
你应该在你的函数中使用参数,这实际上是一个糟糕的设计。你知道吗
您应该将
urtc.DS3231
实例传递给current_time
函数,如下所示:但是您仍然需要在
func.py
中import urtc
,这样urtc.tuple2seconds
就可用了。你知道吗我建议您在职能部门(如果您没有在其他地方使用它们主.py,这是一个更好的做法)。你知道吗
相关问题 更多 >
编程相关推荐