0
다른 질문과 그 해결책을 찾았습니다. 코드를 보내야합니다. 그러나 이것이 인코딩되었는지 여부에 관계없이 여전히이 오류가 발생합니다. 어떤 아이디어 ??? 주석 처리 된 행은 의도 한대로 기능을 수행하도록 제거 된 행입니다. 나는 감각을 만들어이 너무 희망이 질문에 새로운 해요. (나는 버전 3.6를 사용하고 있습니다)Python sendto 오류 TypeError : 바이트가 아닌 str이어야합니다.
Host = servershost
Port = 12345
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind((Host, Port))
s.setblocking(0)
rT = threading.Thread(target=receiving, args=("RecvThread", s))
rT.start()
message = input(Username + ": ")
#s.sendto(message)
while message != 'q':
if message != '':
s.sendto(Username + message.encode('utf-8'), server)
#tlock.aquire()
message = input(Username + ': ')
tlock.release()
time.sleep(0.2)
shutdown = True
rT.Join()
s.close()
는'Username' 나에게 바이트처럼 보이지 않는 : 결과가
bytes
객체 그래서그래서, 단지 두 문자열을 인코딩합니다. –
전체 스택 트레이스주세요 ... (가장 최근 통화 마지막) 장 - FrançoisFabre 역 추적 @ –
: 파일 "C : \ 사용자 \ pov7230 바탕 화면 \ 메모장 \ ++ \ realchat.py", 라인 (77) s.sendto에서 (사용자 이름 + message.encode ('utf-8'), 서버) TypeError : 바이트가 아닌 str이어야합니다. –
Ace