Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python으로 문자열 리스트에 사용자 지정 공백 패딩 적용하는 방법

문자열 리스트의 각 요소에 원하는 크기만큼 공백(스페이스) 패딩을 적용해야 하는 경우가 종종 있습니다. 이럴 때는 빈 리스트, 반복문(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]

파이썬에서는 문자열에 정수를 곱하면 해당 문자가 그 횟수만큼 반복되는 특성을 활용한 방식으로, 로그 포맷팅이나 텍스트 정렬 등 다양한 상황에서 유용하게 응용할 수 있습니다.