파이썬 기본문법
실수를 연산할때 0.9같은 결과값은 이진수로 표시할 수 없기때문에 rount()함수등을 사용한다.
나누기연산자(/)는 나눠진 결과를 실수형으로 반환한다. 몫을 얻기위해선 몫연산자(//), 제곱은 (**) 나머지는(%) 연산자를 사용하여 구현할 수 있다.
list를 통해 데이터를 넣을 수 있다.
indexing을 통해 리스트의 특정한 원소에 접근할 수 있다
slicing을 이용해 리스트에서 원하는 원소를 추출해 올 수 있다.
리스트 컴프리헨션을 통해 리스트를 원하는 조건문을 통해 만들 수 있다.
변수명.append() 를 통해 리스트에 원소를 하나 삽입한다.
변수명.sort() 은 기본 정렬기능으로 오름차순을 정렬한다.
변수명.sort(reverse = True) 은 내림차순으로 정렬한다.
변수명.reverse() 를 통해 리스트에 원소의 순서를 모두 뒤집어 놓는다.
변수명.insert(삽입할 위치 인덱스, 삽입 할 값) 특정한 인덱스 위치에 원소를 삽입할 때 사용한다.
변수명.count(특정값) 특정한 값을 가지는 데이터의 개수를 셀 때 사용한다.
변수명.remove(특정값) 특정한 값을 가지는 원소를 제거하는데 값을 가진 원소가 여러개면 하나만 제거한다.
특정한 원소의 존재 유무를 알수있는 remove_set={}을 이용하여 리스트에서 특정 값을 모두 찾아서 제거할 수 있다.
변수를 초기화할때 큰따옴표나 작은 따옴표를 이용
문자열에 덧셈을 이용하면 문자열이 더해져서 연결된다.
튜플 자료형은 리스트와 유사하지만 한번 선언된 값을 변경할 수 없다.
리스트는 [] 를 사용하고 튜플은 () 사용한다
튜플은 서로다른 성질의 데이터를 묶어서 관리해야 할때, 최단 경로 알고리즘에서 (비용,노드번호)의 형태로 튜플 자료형을 자주 사용한다.
리스트보다 메모리를 효율적으로 사용해야 할때
사전자료형은 키와 값의 쌍을 데이터로 가지는 자료형이다.
dict() 함수를 이용해 설정할 수 있다.
data = dict()
data['홍길동']='97'
data['이순신']='98'
print(data)
b={
'홍길동':97,
'이순신':98
}
print(b)
key_list=list(b.keys())
print(key_list)
집합자료형은 set()함수를 이용해 만들고 중복되는 원소는 모두 제거된다. {}에 원소를 넣음으로 초기화 할 수도있다.
사전자료형과 집합 자료형은 순서가 없기 때문에 인덱싱으로 값을 얻을 수 없다.
input()함수는 한줄의 문자열을 입력받는 함수
map()함수는 리스트의 모든 원소에 각각 특정한 함수를 적용
각데이터를 공백을 기준으로 구분하여 입력
파이썬의 경우 sys라이브러리에 정의되어 있는 sys.stdin.readline()메서드를 이용한다. 단, 입력후 엔터가 줄바꿈 기호로 입력되므로 rstrip()메서드와 함께 사용한다.
print()는 기본적으로 출력이후 줄바꿈을 수행하나 end속성을 이용하여 줄바꿈을 피할 수 있다.
a = 1
b = 2
print(a,b)
print(7, end=" ")
print(8, end=" ")
answer = 7
print("정답은"+str(answer)+"입니다.")
파이썬에선 f를 붙여 f-string을 사용할 수있다
answer=7
print(f"정답은{asnwer}입니다")
파이썬에서 코드의 블록을 들여쓰기로 지정한다.
들여쓰기 할때 4개의 공백문자를 사용하는 것을 표준으로 설정한다
파이썬에선 else if 를 elif로 줄여서 사용한다
score = 65
if score >= 90:
print("학점:A")
elif score >= 80:
print("학점:B")
elif score >= 70:
print("학점:C")
elif score >= 60:
print("학점 D")
else:
print("F!!")
파이썬에선 and or not 등의 단어를 사용해서 논리 연산자를 사용한다.
x in 리스트 => x가 리스트안에 있으면 True, x not in 리스트 => x 가 리스트안에 없을떄 True 반환
아무것도 처리하고 싶지 않을때는 pass 키워드를 사용한다.
score = 90
if score >= 90:
pass
else:
print("a < 90")
파이썬에서는 x > 0 and x < 20 과 0 < x < 20과 같은 결과를 반환한다.
반복문을 작성한 뒤에는 항상 반복문을 탈출 할 수 있는지 확인한다.
for 변수 in 리스트 => 리스트의 원소를 변수가 하나씩 방문한다.
for문에서 연속적인 값을 차례대로 순회할 때는 range()를 주로 사용한다
range(시작값, 끝값+1)형태로 사용한다.
반복문에서 남은 코드의 실행을 건너뛰고 다음반복을 하려할땐 continue를 사용한다.
result = 0
for i in range(1,10):
if i%2 ==0:
continue
result += i
print(result)
반복문을 즉시 탈출하고자 할땐 break를 사용한다.
함수는 파이썬 내장함수와 사용자가 정의한 함수로 나눠진다.
```
def 함수명(매개변수):
실행할 소스코드
return 반환 값
```
매개변수는 함수 내부에서 사용할 변수이고 반환 값은 함수를 작동시켰을때 반환 되는 값이다.
함수 바깥에 선언된 변수를 사용하려면 global 키워드를 사용해야만 한다.
람다표현식을 이용하면 함수를 한줄에 간편하게 작성할 수 있다.
list1 = [1,2,3,4,5]
list2 = [6,7,8,9,10]
result = map(lambda a,b:a+b, list1, list2)
print(list(result))
코딩테스트 유용한 표준 라이브러리
내장함수
itertools : 반복되는 형태의 데이터를 처리하기 유용
heapq : 우선순위 큐 기능을 구현하기 위해 사용
bisect : 이진탐색 기능을 제공
collections 덱, 카운터 등의 유용한 자료구조를 포함
math : 필수적인 수학적 기능 제공 (ex) 팩토리얼, 제곱근, 최대공약수(GCD), 삼각함수 관련함수, 파이와 같은 상수 포함
내장함수
sum : 원소값을 모두 더할때
mid : 원소중 가장 작은값, max: 원소중 가장 큰값
eval : 흔히 우리가 아는 수식을 연산 해준다.
sorted : 오름차순으로 원소 정렬, reverse=True를 넣으면 내림차순으로 된다.
순열과 조합
순열 :서로다른 n개에서 서로다른 r개를 선택하여 일렬로 나열하는것
from itertools import permutations
data = ['A', 'B', 'C']
result = list(permutations(data,3))
print(result)
조합 : 서로다른 n개에서 순서에 상관없이 서로다른 r개를 선택하는 것
from itertools import combinations
data = ['A', 'B', 'C']
result = list(combinations(data,2))
print(result)
중복 순열 : product 함수 사용
from itertools import product
data = ['A', 'B', 'C']
result = list(product(data, repeat=2))
print(result)
중복 조합 : combinations_with_replacement 함수 사용
from itertools import combinations_with_replacement
data = ['A', 'B', 'C']
result = list(combinations_with_replacement(data, 2))
print(result)
Counter
Counter객체는 각원소가 몇번씩 등장했는지 체크하기 위해 사용한다.
from collections import Counter
counterArr = Counter(['red', 'blue', 'red', 'green', 'blue', 'blue'])
print(counterArr['blue'])
print(counterArr['green'])
print(counterArr['red'])
print(dict(counterArr))
Math 라이브러리
최대 공약수를 구해야 할때는 math라이브러리의 gcd()함수를 이용한다.
import math
def lcm(a,b):
return a * b // math.gcd(a,b)
a=21
b=14
print(math.gcd(21,14))
print(lcm(21,14))
Author And Source
이 문제에 관하여(파이썬 기본문법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@dongmen5149/파이썬-기본문법
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)