Модуль импортирует из другой папки - PullRequest
0 голосов
/ 24 сентября 2019

Я хотел написать тестовую программу, и для этого мне нужно включить мой DPS310.py файл.Но почему-то это не работает

Я пытался:

• from myPackage import DPS310
• import ..DPS310
• import myPackage.DPS310

Моя структура:

Projekt
├── myPackage
│   ├── __init__.py
│   └── DPS310.py
├── tests
│   ├── __init__.py
│   └── test_module1.py
├── README.md
├── LICENSE
└── setup.py

test_module1.py Файл

import myPackage.DPS310


msg = "Hello World"
print(msg)

dps = DPS310()
#y = DPS310.getTemperature

print(dps.getTemperature())

DPS310.py Файл (Извлечение. Просто для того, чтобы показать, что здесь используется метод getTempera)

...
class DPS310():
    def __init__(self, *args):
        self.i2c = smbus2.SMBus(1)
        if len(args) > 0:
            self.addr = args[0]
            print("Man addr set")
        else:
            # default sensor's address
            self.addr = 0x77

    def getTemperature(self):
        r = self.i2c.read_i2c_block_data(self.addr, DPS310_TMP_B2, 3)
        # reads out the temperature that is stored in the register
        #       r[0]=TMP0-7    r[1]=TMP8-15  r[2]=TMP16-23
        temp = (r[2] << 16) | (r[1] << 8) | (r[0])  # r[0] << 0
        # deploys this function to 24 bits
        return self.twos_comp(temp, 24)
...

Если я запускаю файл test_module1.py:

Exception has occurred: ModuleNotFoundError
  No module named 'myPackage'
    File "C:\Julian\Projects\PhytonLib_Raspberry\DPS310_Library_RPi\tests\test_module1.py", line 1, in <module>
      import myPackage.DPS310

1 Ответ

0 голосов
/ 24 сентября 2019
No module named 'myPackage' File

Скорее всего, Python не знает, где найти myPackage, поэтому вы можете попробовать установить его в качестве исходного корня (вы можете найти соответствующую информацию для вашей IDE).Также проверьте это сообщение StackOverFlow.

...