PyVisa TypeError после применения структуры папок - PullRequest
0 голосов
/ 24 января 2020

Я использую pyVisa для связи с OSA. После того, как я переместил файлы в папки, чтобы иметь лучшую структуру, больше ничего не работает. Структура: ProjektFolder -> Включает -> VisaInstrument.py и ProjektFolder -> Инструмент -> osa.py

В VisaInstrument.py код выглядит так:

import pyvisa
...
class VisaInstrument():

    def __init__(self, resource):
         self.rm = pyvisa.ResourceManager()
         self.resource = resource
         self.instr = self.rm.open_resource(self.resource)
         logging.debug('New lab object (resource %s) created.' % self.resource)

и в osa.py

from Includes import VisaInstrument
...
class osa(VisaInstrument.VisaInstrument):


    def __init__(self, resource):
        VisaInstrument.__init__(self, resource)

Когда я пытаюсь инициализировать osa следующим образом (в другом файле):

from Instrument import osa
osaControl = osa.osa('GPIB0::14::INSTR')

я получаю следующее сообщение об ошибке:

Traceback (последний вызов был последним):

Файл "", строка 1, в

Файл "C: \ python \ ProjektFolder \ Instrument \ osa.py", строка 40 , в init

VisaInstrument. init (self, resource)

TypeError: аргумент module () 1 должен быть str, а не osa

При показе init в коде нет полужирный

Может кто-нибудь сказать мне, в чем здесь моя ошибка?

1 Ответ

0 голосов
/ 24 января 2020

Проблема была в том, что я неправильно вызвал VisaInstrument в классе osa

from Includes import VisaInstrument
...
class osa(VisaInstrument.VisaInstrument):


    def __init__(self, resource):
        VisaInstrument.VisaInstrument.__init__(self, resource)
             ^this was missing
...