본문 바로가기
(Python)파이썬/(Python)파이썬 문법

(파이썬) 문자열 리스트 합치기/파이썬 join()+예제

by 공부가싫다가도좋아 2021. 6. 21.
반응형

 


파이썬 문자열 리스트 합치기


<파이썬 join() 사용법>

# 문자열 이어붙이기
a=['1','2','3','4']
a=''.join(a)
print(a)

#결과
#1234

# 문자열 사이에'_'를 넣어 이어붙이기
a=['1','2','3','4']
a='_'.join(a)
print(a)

#결과
#1_2_3_4

# 문자열 사이에 " "(공백)을 넣어 이어붙이기
a=['1','2','3','4']
a=' '.join(a)
print(a)

#결과
#1 2 3 4

리스트안의 str형만 가능합니다.

리스트 안의 요소가 str이 아닌경우 에러가 납니다.

 

<에러 나는 경우>

a=[1,2,3,4]  #요소가 str형이 아니므로 에러 발생
a=''.join(a)
print(a)

#line 2, in <module>
#    a=''.join(a)
#TypeError: sequence item 0: expected str instance, int found

 


<간단 예제>

문제

a="ajfEgDskd", a문자열을 사전순으로 정렬한 문자열로 만드시오.(대문자가 소문자 보다 앞에 나오게 정렬.)

예) a="aBdSFGa" 결과: "BFGSaad"

 

코드 풀이

a="aBdSFGa"
a=''.join(sorted(a))

print(a)

# 결과
# DEadfgjks

#풀이
#a = sorted(a)를 할 경우
#a = ['D', 'E', 'a', 'd', 'f', 'g', 'j', 'k', 's']를 반환

#''.join(a)를 하면 리스트안의 요소사이에 ''(아무것도 넣지 않고)으로 이어붙임.

 

<프로그래머스 예제>

문제풀러가기

https://programmers.co.kr/learn/courses/30/lessons/12917?language=python3 

 

코딩테스트 연습 - 문자열 내림차순으로 배치하기

문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로

programmers.co.kr


문제

문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.


입출력 예제

s return
"Zbcdefg" "gfedcbZ"

코드 풀이

def solution(s):
    return ''.join(sorted(s,reverse=True)) 
    #sorted안의 문자열 s는 자동으로 리스트화 되면서 정렬됨.
    #reverse=True를 해주므로 정렬 뒤, 순서를 거꾸로 뒤집어줌

# s="aCrekjTYsX"
# 결과: "srkjeaYXTC"
반응형

댓글