문자열 리스트의 각 요소에 원하는 크기만큼 공백(스페이스) 패딩을 적용해야 하는 경우가 종종 있습니다. 이럴 때는 빈 리스트, 반복문(for), 그리고 'append' 메서드를 활용하면 간단하게 해결할 수 있습니다.
예제 코드
아래는 문자열 리스트의 앞과 뒤에 서로 다른 크기의 공백을 추가하는 예제입니다.
my_list = ["Python", "is", "great"]
print("원본 리스트 :")
print(my_list)
lead_size = 3 # 앞쪽에 추가할 공백 개수
trail_size = 2 # 뒤쪽에 추가할 공백 개수
my_result = []
for elem in my_list:
my_result.append((lead_size * ' ') + elem + (trail_size * ' '))
print("결과 리스트 :")
print(my_result)실행 결과
원본 리스트 : ['Python', 'is', 'great'] 결과 리스트 : [' Python ', ' is ', ' great ']
코드 설명
먼저 문자열로 이루어진 리스트를 정의하고 콘솔에 출력합니다.
앞쪽 공백 크기(
lead_size)와 뒤쪽 공백 크기(trail_size)를 각각 설정합니다.패딩이 적용된 결과를 저장할 빈 리스트를 생성합니다.
반복문으로 원본 리스트의 각 요소를 순회하면서, 공백 문자열에 크기를 곱해(
lead_size * ' ') 원하는 만큼의 공백을 만들고 문자열 앞뒤에 결합합니다.패딩이 적용된 문자열을
append()메서드로 결과 리스트에 추가합니다.마지막으로 결과 리스트를 콘솔에 출력합니다.
참고: 리스트 컴프리헨션으로 더 간결하게 작성하기
위 코드는 리스트 컴프리헨션(list comprehension)을 사용하면 한 줄로 더 간결하게 표현할 수 있습니다.
my_result = [(lead_size * ' ') + elem + (trail_size * ' ') for elem in my_list]
파이썬에서는 문자열에 정수를 곱하면 해당 문자가 그 횟수만큼 반복되는 특성을 활용한 방식으로, 로그 포맷팅이나 텍스트 정렬 등 다양한 상황에서 유용하게 응용할 수 있습니다.