문자열들이 리스트안에서 따로따로 있다.
list_str = ['a', 'b', 'c', 'd']
이걸
'abcd'로 한번에 통합하고 싶다. 어떻게 할까?
answer = ""
for i in range(len(list_str)):
answer += list_str[i]
return answer
문자열도 리스트처럼 문자열끼리 더해질 수 있다.
"a" + "b" = "ab"가 된다.
리스트에서 하나씩 꺼내서 문자열에 더했다. (리스트에서 append 느낌)
이 방법은 무난하지만 파이썬이 보기에는 멋있지 않다!
어떻게 해야 멋있을까?
.join()이라는 함수를 이용하자!
.join()은 리스트 사이의 원소를 붙이는 역할을 한다(리스트의 원소가 str인 경우에만).
"".join()을 사용한다.
list_str = ['a', 'b', 'c', 'd']
print("".join(list_str[:]))
",".join(list_str[:])을 하면?
"a,b,c,d"로 나온다.
+반대의 기능으로 리스트.split()로 문자열을 따로따로 나눠서 리스트에 저장할 수 있다.
*주의 사항*
1. list_str을 하고 [:]을 붙여서 리스트의 전체를 슬라이싱해야한다.
+)[::-1]을 한다면 거꾸로 나올 것이다.
2. list_int = [1, 2, 3, 4]
이걸로 .join()이 가능할까?
슬프게도 정수라서 사용하면 안된다!
'파이썬 > 문자열' 카테고리의 다른 글
숫자를 거꾸로 쓰기 (0) | 2022.02.13 |
---|