ImportError: cannot import name 'Serial' from 'serial' (unknown location)

半世苍凉 提交于 2021-01-22 06:38:37

问题


Whenever i execute the code below it gives me following Error:

ImportError: cannot import name 'Serial' from 'serial' (unknown location)

Code:

  from serial import Serial

  arduinodata = Serial('com4',9600)

  print("Enter n to ON LED and f to OFF LED")

  while 1:
    input_data = raw_input()
    print ("You Entered"+input_data)
    
    if (input_data == 'n'): 
        arduinodata.write(b'1')
        print("LED ON")

    if (input_data == 'f'):
        arduinodata.write(b'0')
        print("LED OFF")

I have installed all the required python modules. Like pyserial, pyfirmata etc but it is continuously giving me this error.


回答1:


Most likely missing an

 __init__.py 

file or the module, or the file sub-directory for the module (Serial) is on a different layer than the file executable. Hope that helps :).




回答2:


I encountered the same problem. I first uninstalled pyserial from all pip, pip3, and conda (I had it on all 3), and then re-installed it. It then worked fine for me. Hope that helps!




回答3:


I got exactly this problem, as well. It was caused by the "pyserial" and "serial" libraries installed on per-user basis with pip while pyserial was also installed system-wide (possibly in a different version, using the Linux package manager).

Solution

Removing the per-user version fixed the problem in my case.



来源:https://stackoverflow.com/questions/60034429/importerror-cannot-import-name-serial-from-serial-unknown-location

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!