반응형

안녕하세요

 

스터디에서 같이 공부한 내용을 정리하고자 글을 쓰게 되었습니다~

 

도움되셨으면 좋겠네요!

 

본 글에 나와있는 코드들을 직접 쳐보고 실행시키면서

 

여러가지로 꼬아가며 다양한 실험을 반복하시면 

 

어느새 파이썬이 익숙하고 재밌으실 겁니다~! 화이팅!

 

참고로 중간 중간 걸려있는 링크들은 글을 읽으시면서 모르는 함수, 문법 등이 나왔을 때 들어가셔서

글에 나온 정도만 이해하실 수 있으면 됩니다. (꼼꼼하게 보실 필요 없어요!)

 

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단계 <조건문>으로 돌아오겠습니다!

반응형