default
제곱근 : n ** (1/2)
정수 판별 : n % 1 == 0 => 정수
int(num, n진법) => n진법 num을 10진법으로 변환
range(start, stop, step) - 범위 내 숫자 생성
ex) range(0, 10, 2) : 0, 2, 4, 6, 8
format(숫자, 'b'(or 'o' or 'x')) => 10진수를 2진수(8진수, 16진수)로 변환
format().zfill(n) => n자리 숫자로 format
string.format() - string에 {}를 이용해 변수가 들어갈 자리를 만들어주고, () 안에 대입할 값을 입력
문자열 관련 함수
s.replace("이전 문자열", "대체할 문자열")
문자열 소문자 - s.lower()
문자열 대문자 - s.upper()
문자열 내에서 특정 문자 개수 구하기 - s.count()
문자열이 모두 숫자로 이루어져있는지 확인 - s.isdigit()
s.find(c) - s에서 c 찾기
정렬
sorted(list, key=lambda x:(조건))
ex) sorted(strings, key=lambda x:(x[n], x)) => x의 n번째를 기준으로 정렬, 같다면 x를 기준으로 정렬
리스트 관련 함수
sum(list) - 리스트의 합
자릿수의 합 구하기
sum(list(map(int, str(n))))
list.reverse() - 리스트 순서 뒤집기
리스트에서 특정 요소 찾기 - list.index('찾을 요소')
list를 str로 - "".join(list)
딕셔너리
{key:value, key2:value2, ...}
key-value 쌍으로 이루어진 자료구조
key 리스트 만들기 - dict.keys()
value 리스트 만들기 - dict.values()
key, value 쌍 얻기 - dict.items()
순열과 조합
import itertools
itertools.combinations(n, 3) => nC3
itertools.permutations(n, 2) => nP2
소수판별
에라토스테네스의 체
answer = 0
sosu = [False] * (n+1)
for i in range(2, n+1):
if sosu[i] == 0:
answer += 1 //소수인 경우
for j in range(i, n+1, i):
sosu[j] = True
return answer
j 반복문은 i부터 n+1까지 i씩 더해가며 반복한다.
i가 2인경우 2의 배수를, i가 3인 경우 3의 배수를 모두 제거하는 것과 같다.
정수형 리스트 join
''.join(map(str, stack))
'공부' 카테고리의 다른 글
[차량 통신 및 네트워크] 11, 12주차 (2) | 2022.12.11 |
---|---|
[차량 통신 및 네트워크] 9, 10주차 (0) | 2022.12.11 |
[컴파일러개론] 중간고사 정리 - Syntax Analysis-Top Down (1) | 2022.10.18 |
[컴파일러개론] 중간고사 정리 - Syntax Analysis (0) | 2022.10.18 |
[컴파일러개론] 중간고사 정리 - Lexical Analysis (0) | 2022.10.18 |