왼쪽에 중요한 문자열이 있고 오른쪽에 중요하지 않은 것들이 하나의 공백으로 분리 된 가변 길이의 문자열이 있습니다. 중요하지 않은 정보는 어떻게 오른쪽에서 제거합니까?파이썬은 16 진수 x00을 가진 공백 뒤에 모든 것을 제거합니다.
나는 rstrip을 시도했지만 성공하지 못했습니다.
편집 : 수정해야 할 실제 값을 입력하겠습니다.
"NPC_tester_contact()) ntact() "
맨 처음 공간 (하나는 닫힌 괄호 왼쪽) 자체는 중요하지 않은 것으로 표시 포함 후 모두 가져야한다.
편집 : 출력은 "NPC_tester_contact()
"이어야합니다!
위에 배치 한 내 문자열을주의 깊게보십시오. 그 뒤에 공백이 많이 있습니다. 딸꾹질의 원인이 무엇인지 추측합니다.
여기 대부분의 솔루션을 시도했지만 아무 것도하지 않거나 공백을 생성합니다.
repr(s)
나를 제공합니다.
'NPC_me_lvup_event_contact()\x00t()\x00act()\x00act()\x00ntact()\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
"NPC_me_lvup_event_contact()
"이어야합니다.
감사합니다.
아마도 이것이 더 좋은 질문입니다. 문자열에 나타나는 첫 번째 \ x00 헥스 뒤에 모든 문자를 제거 할 수있는 방법이 있습니까?
어떤 이유인지, 때때로 작동하며 항상 작동하지는 않습니다. 위의 예는 Levon이 게시 한 방법으로 수행되었습니다.
해결책 : 문제가 해결되었습니다. 이것은 공백 바이트가 아닌 널 바이트입니다. 해결책은 "\ x00"을 식별자 대신 ""대신 사용하는 것입니다.
모두 감사합니다! 새로운 문자열 데이터를 기반으로
여기에 코드를 표시 할 수 있습니까? 저기서 무슨 일이 벌어지고 있는지 보는데 도움이 될 것입니다. – Andbdrew
modelfile = stringdb.read (256) 이외의 다른 코드가 없습니다. – user1150764
@ user1150764 여기서 stringdb는 어디서 오는가? – Andbdrew