Jungol 리스트3 형성평가 12번
문제
3행 5열의 2차원 문자리스트에 차례로 대문자를 입력받은 후 소문자로 바꾸어서 출력하는 프로그램을 작성하시오.
1
2
3
4
5
입력 출력
A B C D E a b c d e
F G H I J f g h i j
K L M N O k l m n o
정답 코드
1
2
3
4
5
6
L = [['A', 'B', 'C', 'D', 'E'], ['F', 'G', 'H', 'I' ,'J'], ['K', 'L', 'M', 'N', 'O']]
for i in range(len(L)):
for j in range(len(L[i])):
print(L[i][j].lower(), end=' ')
print()
풀이
입력된 리스트 값을 모두 소문자로 만들어주기 위해선 리스트 안의 모든 값을 먼저 불러올 필요가 있다.
1
for i in range(len(L)):
이 코드를 통해 리스트 L의 각 행을 반복하게된다. len(L)은 리스트의 길이인 3이 된다.
1
for j in range(len(L[i])):
이 코드는 현재 행 L[i] 안에 있는 각 요소에 대한 반복을 실행한다.
1
2
for j in range(len(L[i])):
print(L[i][j].lower(), end=' ')
이를 통해 각 요소의 값을 lower() 함수를 통해 소문자로 변환시키고 end = ‘ ‘를 통해서 요소 사이에 공백를 추가해서 일단 출력한다.
1
2
3
4
for i in range(len(L)):
for j in range(len(L[i])):
print(L[i][j].lower(), end=' ')
print()
그리고 내부 for문이 종료될 때마다 줄바꿈을 해주기 위해서 외부 for문에 print()를 추가해준다.
결과적으로 L의 각 요소가 소문자로 변환되고, 각 행이 공백으로 구분된 한 줄씩 출력된다.
This post is licensed under CC BY 4.0 by the author.