Python3.4.4 Bluetooth pybluez sock.recv - PullRequest
       11

Python3.4.4 Bluetooth pybluez sock.recv

0 голосов
/ 25 сентября 2018

Я работаю над приложением bluetooth-сервера, используя pybluez lib в python.У меня на компьютере с Windows 7 установлено 2 версии python (python2.7.15 и python 3.4.4), и на обоих уже установлены модули pybluez.Программа отлично работает в Python 2.7.15, но я обнаружил другое поведение в Python 3.4.4.В python 2.7.15 функция:

socket.recv[1024]

ожидает получения данных, затем переходит к следующей строке, если данные получены.Но в python 3.4.4 данные не ожидаются, поэтому программа непрерывно выполняет следующую строку, даже если данные еще не получены.Что я должен сделать, чтобы сделать его похожим с поведением в Python 2.7.15?

Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 28 июля 2019

Просто добавьте строку:

while True:
    data = client_sock.recv(1024)
    if len(data) == 0: break
    print("received [%s]" % data)

Я тестировал только с питоном 3.7

...