2014-10-08 5 views
0

에 이르렀는 파이썬 스크립트의 일부가 내가 가진 :파이썬 - 분할 개별 바이트에 문자열과 여기에 다시 함께

textString = raw_input('') 
    text = list(textString) 
    print textString 
     try: 
      for i in range (0, len(text)): 
       chat_client.sock.send(text[i]) 
       i = i + 1 
      chat_client.sock.send(0) 
      except: 
       Exception 
      try: 
       for i in range (0, len(text)): 
        chat_server.conn.send(text[i]) 
        i = i + 1 
       chat_server.conn.send(0) 
      except: 
       Exception 

난 후 INT를 사용하여, 다시 함께 수신 할 때 넣어 바라고 테스트 목적으로, 나는 개별적으로받은 각 바이트를 보여주기 위해 단지 :

    byte = self.conn.recv(1024) 
        if byte: 
         print byte 
        else: 
         break 

을 받았습니다.

그러나 문자열을 삽입 할 때 문자열 중 일부는 두 개 이상의 문자 (예 : )로 나뉩니다. 빠른 갈색 여우가 게으른 개 점프 -이에 갈 이유 사람이 알아낼 수 있는지 궁금>

T 
h 
e 
q 
u 
i 
ck 

b 
r 
o 
wn 

f 
ox j 
umps ov 
er the 
lazy dog 

.

미리 감사드립니다. 나는이 같은 텍스트를 분할하려고하는 이유

또한, 경우에 당신이 궁금해하는, 그것으로 인해이 게시물에서 제안하는 것입니다 Python P2P socket chat script - only fully working on home network; connects at school but does not work

+0

들여 쓰기를 수정하십시오. – NPE

+0

@NPE 그것을 지적 해 주셔서 감사합니다. 실제 파이썬 파일에서 수정되었지만, 어떤 이유로 여기에서 다시 포맷되었습니다. 나는 내 질문을 편집 할 것이다. – abcbabcbabcba

답변

0

그것은 스트림 소켓 디자인에 의해 입니다. wikipedia page : 에서 스트림 소켓은 레코드 경계가없는 연결 지향, 순서 및 고유 한 데이터 흐름을 제공하는 인터넷 소켓 유형입니다.. 읽었을 때 이미 여러 개의 메시지가있는 경우 연결될 수 있습니다.

모든 것이 사양대로 보장되는 경우 모든 것을 순서대로 제공합니다.