-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathPython Standard Library
110 lines (84 loc) · 2.68 KB
/
Python Standard Library
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
101
102
103
104
105
106
107
108
109
# permutation
def permutations(array, r):
for i in range(len(array)):
if r == 1:
yield [array[i]]
else:
for next in permutations(array[:i] + array[i + 1:], r - 1):
yield [array[i]] + next
result = permutations([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 3)
# 입력을 리스트로 치환
d[i] = list(map(int, input().split()))
# 19X19 배열의 바둑판 초기화
d = [[0 for i in range(20)] for j in range(20)] // +1 해줘야함 RANGE가 -1이니까
# 인풋 한번에 int로 컨버팅하기
a, m, d = tuple(int(x) for x in input().split())
# 등차수열
# 시작 값(a), 등차(d), 몇 번째인지를 나타내는 정수(n)가 입력될 때
# n번째 수를 출력하는 프로그램을 만들어보자.
a, d, n = input().split()
a = int(a)
d = int(d)
n = int(n)
result = a + (n - 1) * d
# 조합의 기본
r, g, b = input().split()
r = int(r)
g = int(g)
b = int(b)
count = 0
for i in range(0, r):
for j in range(0, g):
for k in range(0, b):
print(i, j, k)
count += 1
print(count)
#range(n) : 0~n-1
range(n) 은 0, 1, 2, ... , n-2, n-1 까지의 수열을 의미한다.
예를 들어 range(3) 은 0, 1, 2 인 수열을 의미한다.
#sum()
result = sum([1,2,3,4,5])
> 15
#min(), max()
min_result = min(2,6,4,3)
> 2
max_result = max(2,6,4,3)
> 6
#eval()
result = eval("3+5")
> 8
#sorted()
result = sorted([9,1,8,5,4])
> 1 4 5 8 9 (asending)
result = sorted([9,1,8,5,4], reverse = True)
> 9 8 5 4 1 (descending)
#sorted() with key
array = [('홍길동',35), ('이순신',75), ('아무개',50)]
result = sorted(array, key = lamda x:x[1], reverse : True)
> [('이순신',75), ('아무개',50), ('홍길동',35)]
#permutations
from itertools import permutations
data = ['A', 'B', 'C']
result = list(permutations(data,3)) # A, B, C 3개를 골라 순서를 고려하여 나열
#combinations
from itertools import combinations
data = ['A', 'B', 'C']
result = list(combinations(data, 2)) # 2개를 뽑아 모든 조합 구하기
> A,B / A,C / B,C
# 중복 순열
from itertools import product
data = ['A', 'B', 'C']
result = list(product(data, repeat =2)) # 2개를 뽑는 모든 순열 구하기 (중복 허용)
> A,A / A,B / A,C / B,A / B,B / B,C ...
# 중복 조합
from itertools import combinations_with_replacement
data = ['A', 'B', 'C']
result = list(combinations_with_replacement(data, 2)) # 2개를 뽑는 모든 조합 구하기 (중복 허용)
> A,A / A,B / A,C / B,A / B,B / B,C ...
#Counter
from collections import Counter
counter = Counter(['red', 'green', 'blue', 'blue', 'green', 'blue', 'blue','red'])
print(counter['red'])
> 2
print(dict[counter])
> {'red':2, 'green':2, 'blue':4} # 사전 자료형 반환