2017-11-15 1 views
1

Python 3.4를 사용하여 문자열을 패딩 된 ASCII 값 (각 문자)으로 변환하려고합니다.문자열의 각 문자를 ASCII 및 패드로 변환하는 방법

myString = "hello world" 

는 ASCII로 각 문자를 변환하여 단일 문자열로 다시 가입 :

는 고통을 감안할 때

'10410110810811132119111114108100' 

나는 것 :

asciiString = ''.join(str(ord(c)) for c in myString) 

이 큰, 반환 작동 각 문자을 7 자리로 채운 다음 가입하십시오. 나는 이것을 format과 함께 시도했으며 많은 것을 조합하여 시도해 보았습니다. join, format, strord 모두 나열 할 수도 없습니다. 누군가가 "asciiString ="줄에 형식을 추가하는 방법을 이해할 수있게 도와 줄 수 있습니까? 어쩌면 이것은 한 줄의 코드로 수행 될 수 없을 것입니다.

+0

예상되는 출력으로 질문을 업데이트하십시오. – quamrana

+0

"h"= 104 (반환 된 문자열의 처음 3 자리). 0000104를 반환하고 싶습니다. "e"= 101. 0000101을 반환하고 싶습니다. "he"라는 문자열이 104101 대신 00001040000101을 반환 할 것입니다. – seveninstl

+1

[다음 코드를 사용하여 파이썬 문자열을 어떻게 채울 수 있습니까? 공백?] (https://stackoverflow.com/questions/5676646/how-can-i-fill-out-a-python-string-with-spaces) – quamrana

답변

1
asciiString = ''.join(str('{num:07d}'.format(num=ord(c))) for c in myString) 
관련 문제