首页 > 解决方案 > Micropython ESP8266 错误:AttributeError:“模块”对象没有属性(在 Python 中工作正常)

问题描述

我正在使用带有 Micropython 的 ESP8266 NodeMCU 上使用 Thonny 进行编码。我设法用 Micropython 闪存芯片,连接,添加一个 OLED 显示器并运行我的第一个 Hello World 脚本。但是,当我使用一些以前尝试和测试过的 Python 代码时,我得到一个AttributeError: 'module' object has no attribute xyz错误。据我所知,这不应该是 MicroPython vs python 的问题,所以我有点迷茫。

这是我的 main.py 引发错误:

from machine import Pin, I2C
import ssd1306
from time import sleep
import tubestatus


# ESP8266 Pin assignment
i2c = I2C(-1, scl=Pin(5), sda=Pin(4))

oled_width = 128
oled_height = 64
oled = ssd1306.SSD1306_I2C(oled_width, oled_height, i2c)

while True:
    # Create a new status object for retrieving data
    current_status = tubestatus.Status()

    # Get a list of tube lines
    lines = current_status.list_lines()

    for line in lines:
        oled.text(line, 0, 0)
        oled.text(current_status.get_status(line).description, 0, 10)
        oled.show()
        time.sleep(3)        

import tubestatus指的是 ESP8266 上可用的这个超级简单(但工作)的 github 模块(我假设由 main.py 找到,因为它似乎指的是模块中缺少的属性)。

任何指针都是最受欢迎的!谢谢

这显示了设备上的文件

标签: pythonesp8266micropython

解决方案


推荐阅读