코테공부

파이썬 기본 check point 정리

아너 2024. 11. 22. 18:57

0. 입력

0-1. 문자열 입력

3 4 로 입력이 주어질 때(여러개의 숫자가 한줄로) 각각의 int로 저장하는 방법

line = map(int, input().split()) # 자꾸 까먹는다 ⭐️⭐️map⭐️⭐️을 사용하자 map(function, iterable)

 

 빠른 입력

문자열의 경우 개행문자까지 저장하기 때문에 ⭐️⭐️.rstrip()⭐️⭐️필수

import sys
input=sys.stdin.readline

line=input().rstrip()

 

1. 문자열

1-1. python의 백틱

변수="my string"

print(f”{변수}로 사용하면 됨“)

1-2. any

vowel=["a","e","i","o","u"]

myStr="apple"

any(n in vowel for n in myStr)

 

 

 

 

2. 딕셔너리

 2-1. max 활용

value가 가장 큰 key를 반환 : my_max=max(my_dic,key=my_dic.get)
value가 가장 큰 요소가 여러개라면:
max_key=max(my_dic.values()) #max는 기본적으로 iterable 요소를 반환하는데 딕셔너리에서는 key를 의미
maxArr=[n for n in my_dic.items() if n[1]==max_key]

 

 

 

2. Set vs List

결론부터 말하자면

Set은 특정요소가 set안에 들어있는지 찾는 blahblah in mySet 연산의 시간 복잡도가 O(1)

List는 시간복잡도가 O(n)

 

but 정렬은 리스트가 빠르다

두번째 name입력을 받을때 첫번째 name list에 이미 있는사람인지 확인하는 "name in arr1"에서 O(n)이 추가되므로 실질적 시간복잡도가 O(n^2)이 됨.

 

Set은 in연산자의 시간 복잡도가 O(1)이기 때문에 arr1을 set 자료구조로 변경⭐️

 

 

 

3. 정렬

조건 여러개 둘 수 있음 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

커리큘럼

https://codingdodo.tistory.com/94