[python] 파이썬에서 목록을 공백이있는 문자열로 어떻게 변환합니까?

파이썬에서 목록을 공백으로 구분 된 문자열로 어떻게 변환 할 수 있습니까?

예를 들어 다음 목록을 변환하고 싶습니다.

my_list = [how,are,you]

문자열로 "how are you"

공간이 중요합니다. 나는 howareyou지금까지의 내 시도와 같이 얻고 싶지 않습니다.

"".join(my_list)



답변

" ".join(my_list)

빈 문자열이 아닌 공백으로 조인해야합니다 …


답변

" ".join(my_list)문자열 과 비교할 때 거의 쓸모가 없지만 대체로 이것을 던질 것 입니다. 문자열이 아닌 경우 (예 : int 배열)이 방법이 더 좋을 수 있습니다.

" ".join(str(item) for item in my_list)


답변

Non String의 경우 list다음과 같이 할 수도 있습니다.

" ".join(map(str, my_list))


답변

따라서 원하는 출력을 얻으려면 먼저 함수가 어떻게 작동하는지 알아야합니다.

join()python 문서에 설명 된 메서드 의 구문 은 다음과 같습니다.

string_name.join(iterable)

주의 할 사항 :

  • string의 요소와 연결된를 반환합니다 iterable. 요소 사이의 구분자는 string_name.
  • 의 문자열이 아닌 값 iterableTypeError

이제 공백 을 추가 하려면 string_name을 a " "또는 ' '둘 다로 교체하고 iterable연결하려는을 배치하면 됩니다.

따라서 우리의 함수는 다음과 같습니다.

' '.join(my_list)

그러나 white spaces요소 사이에 특정 수를 추가 하려면 iterable?

다음을 추가해야합니다.

str(number*" ").join(iterable)

여기서는 number사용자 입력이됩니다.

예를 들어 number=4.

그리고, 출력의 str(4*" ").join(my_list)how are you4 공백이있는 모든 단어들 사이에 있도록.


답변

"".join([i for i in my_list])

요청한대로 작동합니다!


답변

다음과 같이 목록 자체의 항목에 공백을 추가하지 않는 이유는 무엇입니까?
list = ["how ", "are ", "you "]


답변