>  기사  >  백엔드 개발  >  문자열을 연결할 때 `.join()`이 구분 기호를 삽입하는 이유는 무엇입니까?

문자열을 연결할 때 `.join()`이 구분 기호를 삽입하는 이유는 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-09 14:05:03235검색

Why does `.join()` insert separators when concatenating strings?

Python의 .join() 메서드 이해

Python의 .join() 메서드는 문자열 연결을 위한 강력한 도구이며 종종 대안보다 선호됩니다. 좋아요와 str.format.

질문: 문자열을 연결할 때 .join()이 예기치 않게 동작하는 이유는 무엇입니까?

답변: .join() 메서드 문자열 목록을 가져와 각 요소 사이에 제공된 구분 문자열을 삽입합니다. 예:

",".join(["a", "b", "c"]) == "a,b,c"

주어진 예에서:

strid = repr(595)
array.array('c', random.sample(string.ascii_letters, 20 - len(strid)))
.tostring().join(strid)

문자열 "595"는 문자 목록으로 변환됩니다: ["5", "9", "5 "]. 그런 다음 구분 기호 문자열이 각 문자 사이에 삽입되어 다음과 같이 출력됩니다.

5wlfgALGbXOahekxSs9wlfgALGbXOahekxSs5

해결 방법: 구분 기호를 삽입하지 않고 문자열을 연결하려면 다음을 대신 사용하세요.

print array.array('c', random.sample(string.ascii_letters, 20 - len(strid)))
.tostring() + strid

위 내용은 문자열을 연결할 때 `.join()`이 구분 기호를 삽입하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.