코딩 공부/Python

[Python] 파이썬 기초 요약

메카인 2023. 3. 9. 22:01

해당 글은 이것이 취업을 위한 코딩 테스트다 with Python (나동빈 저, 한빛미디어)를 참고하여 작성하였습니다.

제게 필요한 부분을 요약하였으며, 문제가 있을시 삭제하겠습니다.

https://github.com/ndb796/python-for-coding-test

 

GitHub - ndb796/python-for-coding-test: [한빛미디어] "이것이 취업을 위한 코딩 테스트다 with 파이썬" 전체

[한빛미디어] "이것이 취업을 위한 코딩 테스트다 with 파이썬" 전체 소스코드 저장소입니다. - GitHub - ndb796/python-for-coding-test: [한빛미디어] "이것이 취업을 위한 코딩 테스트다 with 파이썬" 전체 소

github.com


◆자료형

●실수 숫자 표현

▷0b1010(binary), 0o777(octa), 0xabc(hexa)

 

●반올림

▷round(float, int)

▷실수 float를 소숫점 int자릿수까지 반올림해서 나타낸다. 

a=.5555
round(a,3)
print(a) #a=0.556

●거듭제곱 연산자(**)

▷int**int

 

●리스트 만들기

▷대괄호 안에 원소를 넣어 초기화하며, 쉼표로 원소를 구분한다.

▷a=[0,1,2,3]

 

●빈 리스트 선언 방법

#1
a=list()

#2
a=[]

#크기가 N이고, 모든 값이 0인 1차원 리스트 초기화
n=10
a=[0]*n

●리스트의 인덱싱

▷인덱스 값을 입력하여 리스트의 특정한 원소에 접근하는 것을 인덱싱이라고 한다.

a=[1,2,3,4,5,6]
a[5]=100
print(a)	#[1,2,3,4,5,100]
print(a[2:5])	#[3,4,5]

 

●리스트 컴프리헨션

▷리스트를 초기화할때 반복문을 사용한 리턴으로 여러가지의 값을 넣어줄 수 있습니다.

#0부터 9까지의 수 중에서 짝수만 포함하는 리스트
array = [i for i in range(10) if i%2 ==0]

▷2차원 리스트를 초기화 할 때

n, m = 4, 4

array = [[0] * m for _ in range(n)]
print(array)

#[0,0,0,0] [0,0,0,0] [0,0,0,0]

 

●리스트 관련 메서드

메서드명 사용법 설명 시간 복잡도
append() 변수명.append() 리스트에 원소를 하나 삽입 O(1)
sort() 변수명.sort() 리스트를 기본 정렬(오름차순) O(NlogN)
변수명.sort(reverse=True) 리스트를 내림차순 정렬
reverse() 변수명.reverse() 원소의 순서를 역방향으로 O(N)
insert() 변수명.insert(삽입할 위치,값) 특정 위치에 원소를 삽입한다. O(N)
count() 변수명.count(특정 값) 특정 값을 가지는 데이터 개수 카운트 O(N)
remove() 변수명.remove(특정 값) 특정 값을 가지는 데이터 제거, 단 여러개의 원소가 특정 값을 가질 경우 하나만 제거 O(N)

 

●튜플 자료형

▷튜플은 한 번 선언된 값을 변경할 수 없다.

▷소괄호를 이용한다.

 

●집합(set)

▷값을 순서없이 저장하되 중복을 불허한다.

▷문서 하나에 들어가 있는 단어의 종류의 개수를 셀 때 단어 변형 후 세트의 len()을 하면 된다.

s = set([1,2,3,2,3])

print(s)
#{1,2,3}
  함수 연산식 예시
합집합 union() | s1.union(s2)
교집합 intersection() & s1.intersection(s2)
차집합 difference() - s1.difference(s2)

 

●사전 자료형

▷키와 값의 쌍을 데이터로 가지는 자료형이다.

▷특정한 원소가 있는지 검사하는 코드

data = dict()
data['축구']='socker'
data['십']=10

if '축구' in data:
	print("'축구'를 키로 가지는 데이터가 존재합니다.")

 

●사전 자료형 관련 함수

메서드명 사용법 설명 결과
keys() 리스트 = 사전자료형.keys() 키 데이터를 반환합니다. dict_keys(['사과','바나나','코코넛'])
values() 리스트 = 사전자료형.values() 값 데이터를 반환합니다. dict_values(['Apple','Banana','Coconut'])

▷각 키에 따른 값을 하나씩 출력

data=dict()
data['사과']='Apple'
#생략

for key in key_list:
	print(data[key])
    
...
Apple
Banana
Coconut
...

 

 

●집합 자료형

▷중복을 허용하지 않는다.

▷순서가 없다.

▷집합 자료형 초기화 방법

#1
data = set([1,1,1,2,3,4,4,4,4,5,5]
print(data)	#{1,2,3,4,5}

#2
data ={1,1,2,3,4}
print(data)	#{1,2,3,4}

 

 

●집합 자료형의 연산

기호 이름
| 합집합
& 교집합
- 차집합

 


 

 

●iterable 객체

▷반복 가능한 객체를 말한다.

-리스트, 사전 자료형, 튜플 자료형 등이 해당한다.

 

●복소수

▷i가 아니라 j를 써준다

- a+bj

 

●bool()

▷불린변환

▷bool( ), bool(0) ,bool(None), bool(False) 는 False이고, 나머지는 True이다. (bool(-1)==True)

 

●type()

▷타입을 반환하는 함수

 

●""" """

▷2줄이상 문자열 작성시 """ """사용

 

●len()

▷데이터 길이를 반환하는 함수

 

●extend()

▷여러개의 값을 append해주는 함수