Сокет-сервер на python

Помогите написать сокет-сервер на

Это "мой" сервер. Мне надо сделать так, чтобы после получения сообщения он не включался, и чтобы он проверял полученные сообщения и запускал функцию. Но у меня не работает!

import socket

serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
serversocket.bind(("192.168.0.x", 4004))
serversocket.listen(10) # become a server socket, maximum 10 connections

while True:
    connection, address = serversocket.accept()
    buf = connection.recv(64).decode()
    if len(buf) > 0:
        print(buf)
    break

Ответы (1 шт):

Автор решения: Tr1nks

Ваш код проходит ровно одну итерацию по циклу, так как break находится последней инструкцией в итерации и выполняется всегда.

Если вам необходимо выходить по определенному событию то замените ваш break на:

if exit_condition_reached():
    break

Где exit_condition_reached() это функция, которая проверяет что необходимо выйти из цикла и завершить прослушивание сокета ( может быть заменена на простое условие по вашему усмотрению )

→ Ссылка