[파이썬 알고리즘 3강] 백준 단계별로 풀어보기 1.3 < 연산자 >
안녕하세요
스터디에서 같이 공부한 내용을 정리하고자 글을 쓰게 되었습니다~
도움되셨으면 좋겠네요!
본 글에 나와있는 코드들을 직접 쳐보고 실행시키면서
여러가지로 꼬아가며 다양한 실험을 반복하시면
어느새 파이썬이 익숙하고 재밌으실 겁니다~! 화이팅!
참고로 중간 중간 걸려있는 링크들은 글을 읽으시면서 모르는 함수, 문법 등이 나왔을 때 들어가셔서
글에 나온 정도만 이해하실 수 있으면 됩니다. (꼼꼼하게 보실 필요 없어요!)
2. 파이썬의 연산자에 대하여
(1) 기본적인 사칙연산
① 정수형 데이터의 사칙연산
num1 = 3
num2 = 2
print('덧셈 :', num1+num2) # 더하기
print('뺄셈 :', num1-num2) # 빼기
print('곱셈 :', num1*num2) # 곱하기
print('나눗셈 :', num1/num2) # 나누기 (소수 반환)
print('몫 :', num1//num2)# 몫
print('나머지 :', num1%num2) # 나머지
python은 기본적으로 정수형 데이터는 6가지 사칙연산을 지원합니다.
이 때, 나누기와 관련된 3가지 연산을 주의 깊게 살펴보시면 좋을 것 같습니다
② 문자열 데이터와 리스트의 덧셈
정수형 뿐만 아니라 문자열과 리스트도 덧셈이 가능합니다.
이는 생각보다 알고리즘 문제를 푸는 과정에 있어서 많이 사용하게 되는 강력한 연산 중 하나 입니다 :)
# 문자열 더하기
string_1 = '나는'
string_2 = '배가 고프다'
string = string_1 + ' ' + string_2 # 중간에 공백도 더하기 가능
print(string)
# 리스트 더하기
lst_1 = [1, 2, 3]
lst_2 = [4, 5, 6]
lst = lst_1 + lst_2
print(lst)
특히, 백준 문제 10926번에서 유용하게 쓰일 겁니다!
(2) 기타 내용 (백준의 해당 단계 문제를 풀 때 효율적으로 풀 수 있는 스킬들)
① 3003번 : zip 함수의 활용
우리는 보통 for 문을 돌릴 때 for문 하나당 lsit 하나를 생각합니다.
그러나, 필요에 따라서는 길이가 같은 두가지 리스트를 동시에 돌려야 하는 상황이 옵니다.
이때 zip 함수를 for문에 활용해 주시면 깔끔한 코드가 완성됩니다.
# zip 함수를 활용하여 두 리스트 동시에 for문 돌리기
lst_1 = [1, 2, 3, 4, 5]
lst_2 = [10, 20, 30, 40, 5]
for i, j in zip(lst_1, lst_2) : # i, j <- 각각 lst_1, lst_2 의 원소이다.
print(i, j)
② 2558번 : 리스트에 거꾸로 접근하는 방법
# reversed 함수 이용하여 리스트를 거꾸로 출력하기
lst = [1, 2, 3, 4, 5]
for i in reversed(lst) : # reversed(리스트) : 리스트가 거꾸로 됨
print(i, end = ' ')부터 마스터해 두시면 도움이 되실 겁니다
# 슬라이싱을 응용하여 리스트를 거꾸로 출력하기
lst = [1, 2, 3, 4, 5]
for i in lst[::-1] :
print(i, end = ' ')
# range를 응용하여 리스트를 거꾸로 출력하기
lst = [1, 2, 3, 4, 5]
for i in range(len(lst)-1, -1, -1) :
print(lst[i], end = ' ')
위의 예시 들을 직접 쳐보시면 감이 잡히실 겁니다.
일단은 3가지 중 가장 편하고 이해 잘되시는 방법을 쓰시면 될 것 같습니다~
이것 외에도 join 함수 / enumerate / [i for i in range(10)] 등 python을 python 답게 해줄 수 있는 방법이 많지만,
차차 알아가도록 하고! 일단은 이 정도의 지식을 토대로 백준 단계별로 풀어보기 1단계를 푸신다면
큰 도움이 되리라 생각됩니다.
다음에는 2단계 <조건문>으로 돌아오겠습니다!
'밤샘코딩 > 백준 단계별로 풀어보기 (이론)' 카테고리의 다른 글
[파이썬 알고리즘 6강] 백준 단계별로 풀어보기 3.1 < for문 1> (0) | 2022.11.15 |
---|---|
[파이썬 알고리즘 5강] 백준 단계별로 풀어보기 2.2 < 조건문 2> (0) | 2022.11.15 |
[파이썬 알고리즘 4강] 백준 단계별로 풀어보기 2.1 < 조건문 1> (0) | 2022.11.15 |
[파이썬 알고리즘 2강] 백준 단계별로 풀어보기 1.2 < 출력 > (0) | 2022.11.14 |
[파이썬 알고리즘 1강] 백준 단계별로 풀어보기 1.1 < 입력 > (1) | 2022.11.14 |
댓글
이 글 공유하기
다른 글
-
[파이썬 알고리즘 5강] 백준 단계별로 풀어보기 2.2 < 조건문 2>
[파이썬 알고리즘 5강] 백준 단계별로 풀어보기 2.2 < 조건문 2>
2022.11.15 -
[파이썬 알고리즘 4강] 백준 단계별로 풀어보기 2.1 < 조건문 1>
[파이썬 알고리즘 4강] 백준 단계별로 풀어보기 2.1 < 조건문 1>
2022.11.15 -
[파이썬 알고리즘 2강] 백준 단계별로 풀어보기 1.2 < 출력 >
[파이썬 알고리즘 2강] 백준 단계별로 풀어보기 1.2 < 출력 >
2022.11.14 -
[파이썬 알고리즘 1강] 백준 단계별로 풀어보기 1.1 < 입력 >
[파이썬 알고리즘 1강] 백준 단계별로 풀어보기 1.1 < 입력 >
2022.11.14