Форум сайта python.su
Привет всем. Граждане, подскажите по такому делу. Пишу проект, рабою с модулем pyserial. Все бы славно, но вот какая заковырка. Проект валится со словами, что module has not attribute Serial.
Вот пример:
>>> import serial
>>> ser = serial.Serial('/dev/ttyS1', 19200, timeout=1)
>>> x = ser.read() # read one byte
>>> s = ser.read(10) # read up to ten bytes (timeout)
>>> line = ser.readline() # read a ‘\n’ terminated line
>>> ser.close()
Он работает.
Если код набрать в файл:
#!/usr/bin/python2.7
import serial
ser = serial.Serial('/dev/ttyS1', 19200, timeout=1)
x = ser.read() # read one byte
s = ser.read(10) # read up to ten bytes (timeout)
line = ser.readline() # read a ‘\n’ terminated line
ser.close()
то, все валится.
ОСь ubuntu 12.04 LTS.
Это не первая либа с такой бякой.
Заранее благодарю за ответ.
Офлайн
laa88rf
отталкиваясь от того что сообщество без проблем использует эту библиотеку предположу что проблема конкретно у вас, и, вероятнее всего, конкретно с вашим ПК/ОС. Вы корректно ее установили?
john_16@linux-home:/usr/lib/python/site-packages/serial> python -c "import serial;print serial.VERSION"
2.5
john_16@linux-home:/usr/lib/python/site-packages/serial> ll | grep -e ".*\.py$"
-rw-r--r-- 1 root root 2245 янв 27 2013 __init__.py
-rw-r--r-- 1 root root 9315 авг 14 2009 loopback_connection.py
-rw-r--r-- 1 root root 58059 дек 26 2009 rfc2217.py
-rw-r--r-- 1 root root 9946 авг 14 2009 serialcli.py
-rw-r--r-- 1 root root 9193 авг 14 2009 serialjava.py
-rw-r--r-- 1 root root 24193 янв 27 2013 serialposix.py
-rw-r--r-- 1 root root 19234 июл 22 2010 serialutil.py
-rw-r--r-- 1 root root 15637 май 21 2010 serialwin32.py
-rw-r--r-- 1 root root 5841 июл 24 2009 sermsdos.py
-rw-r--r-- 1 root root 9584 авг 14 2009 socket_connection.py
-rw-r--r-- 1 root root 9044 июл 25 2009 win32.py
john_16@linux-home:/usr/lib/python/site-packages/serial> python -c "import sys;print sys.path;from serial import Serial" ['', '/usr/lib/python27.zip', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/lib/python2.7/site-packages', '/usr/lib/python2.7/site-packages/PIL', '/usr/local/lib/python2.7/site-packages', '/usr/lib/python2.7/site-packages/gst-0.10', '/usr/lib/python2.7/site-packages/gtk-2.0', '/usr/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg-info']
Офлайн
1@1:~/prj$ python -c "import sys; print sys.path; from serial import Serial;print serial.VERSION" ['', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-i386-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PILcompat', '/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/python2.7/dist-packages/ubuntu-sso-client'] Traceback (most recent call last): File "<string>", line 1, in <module> NameError: name 'serial' is not defined
1@1:~/prj$ python -c "from serial import Serial;print serial.VERSION" Traceback (most recent call last): File "<string>", line 1, in <module> NameError: name 'serial' is not defined
/usr/lib/python2.7/dist-packages/serial$ ll | grep -e ".*\.py$" lrwxrwxrwx 1 root root 45 февр. 15 22:28 __init__.py -> ../../../../share/pyshared/serial/__init__.py lrwxrwxrwx 1 root root 44 февр. 15 22:28 rfc2217.py -> ../../../../share/pyshared/serial/rfc2217.py lrwxrwxrwx 1 root root 46 февр. 15 22:28 serialcli.py -> ../../../../share/pyshared/serial/serialcli.py lrwxrwxrwx 1 root root 47 февр. 15 22:28 serialjava.py -> ../../../../share/pyshared/serial/serialjava.py lrwxrwxrwx 1 root root 48 февр. 15 22:28 serialposix.py -> ../../../../share/pyshared/serial/serialposix.py lrwxrwxrwx 1 root root 47 февр. 15 22:28 serialutil.py -> ../../../../share/pyshared/serial/serialutil.py lrwxrwxrwx 1 root root 48 февр. 15 22:28 serialwin32.py -> ../../../../share/pyshared/serial/serialwin32.py lrwxrwxrwx 1 root root 45 февр. 15 22:28 sermsdos.py -> ../../../../share/pyshared/serial/sermsdos.py lrwxrwxrwx 1 root root 42 февр. 15 22:28 win32.py -> ../../../../share/pyshared/serial/win32.py
Отредактировано laa88rf (Июль 31, 2013 14:37:23)
Офлайн
Попробуйте в консоле и файле
import serial print serial.__path__
Офлайн
Точно. Давно я не кодил на питоне. Спасибо.
Офлайн