a = 1e9 # 1000000000.0
b = 75.25e1 # 752.5
c = 3954e-3 # 3.954
a = 0.3 + 0.6
print(a) # 0.89999999
round(a, 2) # 0.9
이렇게 실수 부분을 정확하게 표현하고 싶다면 round함수를 통해서 나타낸다.
// -> 몫을 얻기 위한 목 연산자
** -> 거듭 제곱 연산자
여러 개의 데이터를 연속적으로 담아 처리하기 위해 사용하는 자료형.
C나 자바에서 배열의 기능 및 연결 리스트와 유사한 기능을 지원한다.
n = 10
a = [0] * n
print(a) # [0, 0, 0, ..., 0]
a = [1, 2, 3, 4, 5, 6, 7, ...]
print(a[1:4]) # [2,3,4]
array = [i for i in range(10)]
array = [i for i in ragne(20) if i % 2 == 1]
array = [[0] * m for _ in range(n)] # -> O ( _ 일 경우는 변수 값을 무시할 때 사용 )
array = [[0] * m ] * n # -> X 이렇게 하면 내부가 같은 객체로 인식되서 하면 안된다.
array = list()
array.append() # 리스트에 원소 하나를 삽입
array.sort() # 오름차순으로 정렬, reversr=True면 내림차순
array.reverse() # ['a', 'b', 'c'] -> ['c', 'b', 'a']
array.insert() # 특정 위치에 넣을 때
array.count(특정값) # 특정한 값을 가지는 데이터 개수를 센다.
array.remove(특정값) # 특정한 값을 갖는 원소 삭제, 원소가 여러개면 하나만 삭제
자바의 HashMap처럼 Key, Value의 쌍으롤 이루어진 자료형.
값이 순차적으로 저장되는 것과 다르다!
data = dict()
data['사과'] = 'Apple'
data['바나나'] = 'Banana'
if '사과' in data: # -> True
b = {
'홍길동' : 97,
'이순신' : 98
}
data.keys() # -> 키들만
data.values() # -> 값들만
data = set([1, 1, 2, 3, 4, 4, 5])
data = {1, 1, 2, 3, 4, 4, 5}
data.update([5, 6]) # {1, 2, 3, 4, 5, 6}
input() : 한 줄의 문자열을 입력 받는 함수
map() : 리스트의 모든 원소에 각각 특정한 함수를 적용할 때 사용
n = int(input())
data = list(map(int, input().split()))
sys.stdin.readline().rstrip() : 입력을 최대한 빠르게 받아야 할 때 사용
import sys
data = sys.stdin.readline().rstrip()
print(, end="") : end를 통해서 줄바꿈이 아니라 직접 마지막 부분을 정의 가능
range(x, y, z) : x에서 y-1까지 z만큼 증가.
print(a)와 같이 참조시에는 에러가 나지 않지만 a += 1 과 같이 값을 수정할 경우에 에러 발생.
a = 0
def func():
global a
a += 1
for i in range(10):
func()
print(a) # 10
array = [1,2,3]
def func():
array.append(4)
func()
이와 같이 list의 내부 함수를 호출 할 때는 에러가 발생하지 않는다.
print( (lambda a,b : a+b )(3,7) )
array = [('홍길동', 50), ('이순신', 32), ('아무개', 74)]
print(sorted(array, key=lambda x:x[1]))
list1 = [1, 2, 3, 4, 5]
list2 = [6, 7, 8, 9, 10]
print( list( map( lambda a,b : a+b, list1, list2 ) ) )