- 입력 하나 받고 출력
n = input() # 입력 하나 받기
print(n) # 출력
- 값 교환
a, b = 10, 20
print(a, b) # 10 20
a, b = b, a
print(a, b) # 20 10
- 변수 타입 출력
a = 10
print(type(a)) # int
int, float, str
- 출력 방식
print("number")
print(a, b, c, sep=', ') # a, b, c 분리하는 방법 sep
- 줄바꿈 안하는 방법(end)
print(a, end=' ')
- 변수 입력과 연산자
a = input() # 입력 방법
print(a)
a = input("숫자를 입력하세요 : ") # 숫자를 입력하세요
a, b = input("숫자를 입력하세요 : ").split()
# 2개를 입력 받는 방식이 아니라, input으로 입력을 받은 후
# split을 통해 2개로 값을 분리 -> split
# split으로 분해되면 문자열로 들어간다.
print(a,b) # 3 5
print(a+b) # 35
# 다른 방법 - map
a, b = map(int, input("숫자를 입력하세요 : ").split())
- 사칙연산
input 3 2
a+b # 5
a-b # 1
a*b # 6
a/b 나누기 # 1.5
a//b 몫 # 1
a%b 나머지 # 2
a**b 거듭제곱 # 3^2
- 조건문
x=7
if x==7:
print("Lucky")
if x>0 and x<10:
print("10보다 작은 자연수")
if 0<x<10:
print("10보다 작은 자연수")
if x>0:
print("양수")
else:
print("음수")
if x>=90:
print('A')
elif x>=80:
print('B')
else:
print('F')
- 반복문
a = range(10) # 0~9까지 10개의 수
a = range(1, 11) # 1부터 10(1~10)
print(list(a))
for i in range(10): # 0~9
print(i)
for i in range(1,11): # 0~9
print(i)
for i in range(10, 0, -2) # 10 8 6 4 2
print(i)
i=1
while i<=10:
print(i) # 1 ~ 10
i=i+1
i = 10
while i>=1:
print(i)
i = i-1
i=1
while True: # 1 ~ 10
print(i)
if i == 10:
break
i=i+1
for i in range(1, 11):
if i%2==0:
continue
print(i) # 1 3 5 7 9
for i in range(1, 11):
print(i)
if i>15:
break
else:
print(11) # for문 정상 실행시 for else 구문 출력
# N = input() for문에서 N+1이 문자로 인식된다.
N = int(input()) # int 명시해주기
evenSum = 0
totalSum = 0
for i in range(1, N+1):
totalSum = totalSum + i
if(i%2==1): # 짝수 출력
print(i, end=' ')
if(N%i==0): # 약수 출력
print(i, end=' ')
print(totalSum) # 총합 출력
- 중첩 반복문(2중 for문)
for i in range(5): # 5번 반복
print('i:', i, sep='', end=' ')
for j in range(5):
print('j:', j, sep='', end=' ')
print()
for i in range(5):
for j in range(i+1):
print('*', end=' ')
print()
for i in range(5):
for j in range(5-i):
print('*', end='')
print()
- 문자열 접근 방법
# 문자열 접근 방법 1
for i in range(len(msg)): # 1~10
print(msg[i], end='')
# 문자열 접근 방법 2
for x in msg:
print(x, end='')
- 대소문자, 문자열 쪼개기
msg = "It is Time"
print(msg.upper()) # 대문자 변환
print(msg.lower()) # 소문자 변환
print(msg)
tmp = msg.upper()
print(tmp)
print(tmp.find('T')) # 1 인덱스 번호를 찾아준다.
print(tmp[1]) # T
print(tmp.count('T')) # 2 특정 문자의 개수 출력
print(msg[:2]) # It : 제일 처음부터 1, 2번까지
print(msg[3:5])
print(len(msg)) # 10
# 대소문자 출력
for x in msg:
if x.isupper(): # 대문자만 출력
print(x)
msg = "It is Time"
for x in msg:
if x.isalpha(): # 알파벳만 출력
print(x, end='')
- ASCII 표현
tmp = 'AZ'
for x in tmp:
print(ord(x)) # ord는 아스키 넘버 출력 -> 65 90
tmp = 65
print(chr(tmp)) # 아스키 코드 출력 -> A
- 리스트와 내장함수
import random as r
a=[]
b=list()
print(a) # 같은 표현 1
print(b) # 같은 표현 2
a = [1,2,3,4,5]
b=list(range(1, 11)) # 1부터 10까지의 리스트
print(a+b) # 두개의 리스트를 합친다.
a.append(6) # 배열의 뒤에 원소를 추가하는 함수
a.insert(3, 7) # 3번 인덱스에 7 입력
a.insert(3, 7) # 3번 인덱스에 7 입력
a.pop() # 리스트 맨 뒤의 원소를 없애준다
a.insert(3, 7) # 3번 인덱스에 7 입력
a.pop(3) # 3번 인덱스 값을 제거해준다.
a.remove(4) # 4라는 값 찾아서 제거
print(a.index(5)) # 5라는 값의 인덱스 출력
a = list(range(1,11)) # 1부터 10까지의 리스트 생성
print(a)
print(sum(a)) # 리스트 원소들의 총합
print(max(a)) # 최대값 출력
print(min(a)) # 최소값 출력
print(min(7,5)) # 인자 값들 중에서 최소값을 찾아주는 min
import random as r
r.shuffle(a) # 랜덤으로 값을 섞어주는 라이브러리
a.sort() # 오름차순 정렬
a.sort(reverse=True) # 내림차순 정렬
a.clear() # 리스트의 모든 값들이 삭제된다.
a = [23, 12, 36, 53, 19]
print(a[:3]) # 0~2번 index value output
print(a[1:4]) # 1~3번 index
print(len(a)) # 5
- 반복문으로 리스트 원소 접근
for i in range(len(a)): # 같은 결과 1
print(a[i], end=' ')
print()
for x in a: # 같은 결과 2
print(x, end=' ')
a = [23, 12, 36, 53, 19]
# 방식1
for x in enumerate(a): # 튜플 자료구조
print(x)
# 방식2
for x in enumerate(a):
print(x[0], x[1])
# 방식3 을 제일 많이 사용한다.
for index, value in enumerate(a):
print(index, value)
# 출력 결과
# (0, 23)
# (1, 12)
# (2, 36)
# (3, 53)
# (4, 19)
리스트, 튜플, 셋, 딕셔너리
- list : [], 값 변경 가능
- tuple : (), 값 변경 불가능
- set : {}
- dictionary : {key:value, key:value}
b = (1,2,3,4,5)
print(b[0]) # 접근 방법 -> 1 출력
b[0] = 7 # 튜플의 값은 변경이 불가능하다
# if all, if any 사용방법
if all(50>x for x in a):
print("YES")
else:
print("NO")
# for문으로 a 리스트를 변수 x로 접근
# 60보다 큰 값들이 없어요
# if all은 모든 값들이 해당되어야 한다. 1개라도 거짓이면 X
if any(15>x for x in a):
print("YES")
else:
print("NO")
# any는 하나라도 참이면 참을 반환한다.
'코딩테스트 > 인프런' 카테고리의 다른 글
[Python] 4장 이분탐색(결정 알고리즘)&그리디 내용 정리 (0) | 2022.08.02 |
---|---|
[Python] 3장 string&탐색&시뮬레이션 내용 정리 (0) | 2022.08.02 |
[codility] Lesson 2. Arrays - CyclicRotation (0) | 2022.08.01 |
[codility] Lesson 1. Iterations - BinaryGap (0) | 2022.08.01 |
[Python] 2장 구현 내용 정리 - 약수, 소수, 반올림 (0) | 2022.08.01 |