728x90
반응형
문제
숫자를 범위 안의 숫자를 랜덤으로 뽑은 후 정해진 행(사진에선 가로 10줄)에 배열.

random package 사용을 선언 하고
1부터 100까지 수를 가진 리스트를 만듭니다.
import random l = list(range(1,101))
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
L 리스트에 있는 내용을 임의로 섞습니다. (소문자 l은 보기에 i, 숫자 1 등 다른 문자와 혼동될 수 있기 때문에 설명은 L로 할께요)
random.shuffle(l)
[89, 56, 5, 50, 55, 49, 73, 6, 16, 67, 83, 20, 48, 40, 1, 32, 17, 37, 70, 3, 62, 36, 9, 87, 28, 60, 2, 4, 88, 79, 26, 74, 45, 97, 61, 14, 10, 59, 92, 42, 30, 38, 66, 21, 95, 19, 33, 64, 47, 85, 58, 24, 53, 44, 71, 76, 43, 93, 15, 86, 29, 84, 78, 98, 22, 8, 46, 75, 65, 96, 13, 69, 100, 41, 77, 27, 90, 25, 81, 68, 31, 12, 52, 7, 57, 54, 63, 18, 94, 82, 11, 34, 23, 91, 35, 99, 51, 39, 72, 80]
다음 코드인데, 여러개 개념이 같이 있어서 어려울 수 있어요.
for i in range(10): print(''.join(map(lambda n:'%3s '%n, l[10*i:10*(i+1)])))
하나씩 떼어내서 실험해보면 됩니다.
(lambda n:'%3s '%n)(3) # 앞뒤에 공백 만들기
결과를 보면 앞뒤어 공백을 붙여주는 것을 알 수 있습니다.
' 3 '
lamda다는
- lambda 매개변수 : 표현식
으로 되어 있습니다.
위 코드를 왼쪽부터 보면
- n을 마지막으로 받을 거고
- '%3s ' 와 같이 문자열로 3자리 만든다
- %n 은 n을 이수로 받는다.
- (3)은 제가 임으로 값을 준것으로
다음은 'l[10*i:10*(i+1)]'코드인데
다음과 같이 실행해 봅니다.
for i in range(10): print(l[10*i:10*(i+1)])
아래 결과를 보면 L 리스트 10개씩 만들어 주는 것입니다.
[4, 28, 51, 67, 18, 89, 88, 81, 7, 13] [69, 76, 27, 43, 40, 87, 85, 11, 9, 91] [46, 50, 2, 45, 59, 86, 6, 32, 99, 90] [75, 77, 22, 33, 20, 16, 49, 71, 37, 38] [79, 30, 66, 78, 54, 58, 84, 1, 3, 19] [60, 8, 24, 70, 47, 48, 80, 41, 93, 65] [35, 92, 83, 53, 42, 72, 14, 34, 36, 73] [98, 5, 57, 64, 10, 12, 15, 44, 94, 25] [96, 61, 21, 31, 74, 68, 100, 95, 26, 17] [52, 56, 82, 63, 23, 55, 39, 62, 29, 97]
join은
a = ['a','b','c'] ''.join(a)
입력으로 들어온 List의 문자열 값들를 붙여줍니다.
'abc'
728x90
반응형
'프로그램' 카테고리의 다른 글
| [파이썬] 문제 : 실행 인수를 받아 파일의 단어 추출 (1) | 2022.11.22 |
|---|---|
| [파이썬] 문제 : 1~100까지의 합 계산 (0) | 2022.11.21 |
| [파이썬] 문제 : pandas 문자열 바꾸기 (0) | 2022.11.21 |
| [파이썬] 문제 : 1~12월의 계절 출력 (0) | 2022.11.21 |
| [파이썬] 문제 : 입력 받은 문장의 단어 빈도수 (0) | 2022.11.21 |
댓글