코테에 파이썬을 가장 많이 쓰는 것으로 알고 있다.
기본 제공 함수나 문법이 좋아서 코테용으로 많이들 입문하고 나도 코테용으로만 접하게 됐다.
엄청 쉽다보니 평소에 쓰던 다른 언어랑 어떻게 대치되어 사용되는지 잘 모르는 문법들도 존재하여 정리한다.
1. 파이썬 기본 문법
1-0. 데이터타입
#숫자(int) a = 10
#문자(string) a = '10'
#리스트(list) a = [10, 20]
#튜플(tuple) a = (10, 20)
#셋(set) a = {10, 20}
#딕셔너리(dictionary) a = ['key':'value', 'key2':'value2']
기본 설정 값 없이 데이터 타입만 선언하는 경우는 a = [] / a =() / a = {} 와 같이 선언하면 된다.
1-1. 반복문 for문
a = [1,3,5,7,9]
for i in range(len(a)):
print(a[i])
for idx, val in enumerate(a):
print val
기본형으로는 for i in range(0,10) = for i in range(10) 으로 볼 수 있겠으며
인덱스 값이 필요치 않다면 for _ in range(0,10) 처럼 사용할 수도 있다.
range 함수 안에 들어 있는 수치가 각각 무엇을 의미하는지 헷갈려서 테스트를 해봤는데
이런 몰골로 보아서는 range(시작 index, 마지막index) 이긴한데 마지막index 미만인 값까지만 으로 보인다.
for j in range(num,0, -1):
for i in reversed(range(10)):
증가가 아닌 감소는 -1 을 인자값에 추가해야함
혹은 reversed()함수를 추가해야함
1-2. 조건문
if val == 1:
print(1)
elif val == 2:
print(2)
else:
print(*)
조건문에 괄호를 사용치 않으며 else if 가 아닌 elif를 쓰는 모습을 볼 수 있다.
1-3. while문
val, val2 = 10,10
sum = 0
while not(val == 0 & val2 == 0) :
val -= 1
val2 -= 1
sum = val + val2
이왕이면 여러 기본문법을 보여주기위해 위와 같은 예시를 들었다.
보통 타 문법에서 not(false)의 경우 "!" 를 많이 쓰는데 파이썬은 not을 쓰며
&&가 아닌 &를 쓴다.
1-4. switch case문
if:
elif 조건:
elif 조건:
...
우리가 통상적으로 아는 switch(n){ case 1: break; case2: break;} 로 쓰는 switch case문이 파이썬에는 없다.
if elif 로 쓰면 된다.
1-5. input()
str = input()
num = int(input())
a, b = map(int, input().split())
listA = list(map(int, input().split()))
input값은 기본적으로 string형이며 첫쨋줄 처럼 받으면 input만 받을 수 있다.
받은 데이터 값을 바로 데이터타입 전환을 하고 싶다면 둘쨋줄 처럼 int(input())
input값이 여러개인 경우 스페이스로 값이 분리된다고 가정 셋쨋줄 처럼 - map(int, input().split())
여러개 받은 값을 리스트형으로 변환하고 싶다면 셋쨋줄 + list(~~~)
import sys
input = sys.stdin.readline()
위 같은 방식으로 input()을 받을 수도 있다.
단 readline()의 경우는 개행문자(\n)도 포함하여 가져오기 때문에 주의해서 가져와야 한다. 좌우 공백을 없애기 위해 .strip() 오른쪽만 없앨 때는 .rstrip() 왼쪽만 없앨 때는 .lstrip()을 추가로 쓰면 된다.
1-6. 산술연산
a, b = 12, 5
a + b = 17
a - b = 7
a * b = 60
a ** b = 12의5승 - 거듭제곱
a / b = 2.4
a // b = 2 -몫
a % b = 2 -나머지
1-7. 삼항연산자
max = num1 if num1 > num2 else num2
통상적으로 쓰는 방식으로는 max = num1>num2 ? num1 : num2 같은 꼴이다.
1-8. 예외처리(try catch)
try:
except IdxError:
try catch문이 아닌 try except Error구문의 형태로 되어있다.
1-9. print 문 string붙여쓰기
#result = idx 3 : 9
print("idx", i, ": ", sum)
#result = idx3: 9
print("idx"+ str(i) + ": " + str(sum))
print 내부에서 ,를 쓰면 기본적으로 공백이 포함되고 +를 쓰면 붙여서 써짐
'IT이야기 > CODE PRACTICE' 카테고리의 다른 글
[이분탐색] 백준 10816 - 파이썬 (0) | 2024.10.24 |
---|---|
[PYTHON] 코테에 사용되는 기본 내장함수 (2) | 2024.10.18 |
정렬 알고리즘 - 파이썬 (선택정렬, 버블정렬, 삽입정렬, 병합정렬, 퀵정렬, 계수정렬) (0) | 2024.10.16 |
[파이썬] 코딩테스트에서 사용되는 함수 기본기 - 탐색, 소수찾기, 소인수분해, k진수 등 (0) | 2024.10.15 |
백준 3190 - 파이썬 힌트 및 풀이과정 (0) | 2024.01.17 |