Я работаю и простую программу сокетов, и мне нужно проверить значение, отправленное клиентом на сервер. Я в точке, где я могу напечатать вход клиентов на сервере, но любые данные, посланные возвращает значение ИСТИНА, когда я проверить его с «StartsWith»В python3 startswith всегда возвращается True
Код:
'''
Simple socket server using threads
'''
import socket
import sys
from _thread import *
HOST = ''
PORT = 127 # Arbitrary non-privileged port
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print("Socket created")
#Bind socket to local host and port
try:
s.bind((HOST, PORT))
except socket.error as msg:
print("Bind failed. Error Code : " + str(msg[0]) + " Message " + msg[1])
sys.exit()
print("Socket bind complete")
#Start listening on socket
s.listen(10)
print("Socket now listening")
#Function for handling connections. This will be used to create threads
def clientthread(conn):
#Sending message to connected client
#conn.send("Welcome to the server. Type something and hit enter") #send only takes string
#infinite loop so that function do not terminate and thread do not end.
commandz = ""
while True:
#Receiving from client
data = conn.recv(1024)
commandz += data.decode()
#reply = "OK..." + commandz
print(commandz)
if commandz.startswith('F'):
print("Forwardmove")
else:
print("Not forward")
if not data:
break
#conn.sendall("heard you")
#came out of loop
conn.close()
#now keep talking with the client
while 1:
#wait to accept a connection - blocking call
conn, addr = s.accept()
print("Connected with " + addr[0] + ":" + str(addr[1]))
#start new thread takes 1st argument as a function name to be run, second is the tuple of arguments to the function.
start_new_thread(clientthread ,(conn,))
s.close()
НЕ использовать '' * импорт. Кроме того, вы уверены, что хотите низкоуровневый '_thread', а не один из высокоуровневых модулей? – ThiefMaster
'127' не является непривилегированным портом. Для этого вам нужно больше 1024. – ThiefMaster
Можете ли вы уточнить, что не так с импортом *? Новое на этом языке, поэтому вся обратная связь приветствуется. – WillMc