티스토리 뷰
파이썬 복습 - 연산자, if, for, list comprehension, 문자열 함수, import & alias
0_hoonie 2022. 8. 6. 00:57연산자
%: 몫을 나눈 나머지를 구함
//: 나눗셈에 대한 몫을 정수형으로 구함
**: 제곱 연산
비교연산자
== : 같다
!= : 같지 않다
>,>=,<,<= : 대소비교
논리연산자
and , or
*파이썬 작성시 Indent(들여쓰기)는 정말 중요하다.
함수의 기본형⬇️ ( : 이 표시를 꼭 써야함에 유의! )
def func(a, b, c):
return (a + b) * c
이후 func(1,2,3) 입력 시 출력 값으로 9가 나온다.
* 문자도 값이므로 변수 a,b,c에 문자열도 들어갈 수 있다!(하지만, 출력 자체는 문자열 연산이 가능한 연산식이여야 할 것이다.)
*함수로 넘겨줄 때는 순서가 중요하다!( 변수대로 입력되는 것이 아니라 순서대로 들어간다.
a = 10
b = 20
c = 3
func(c,b,a) #출력 230
func(a,b,c) #출력 90
if, elif, else
if 3 > 5:
print('if 구문')
elif 3 > 4:
print('elif 1 구문')
elif 3 > 5:
print('elif 2 구문')
elif 3 < 6:
print('elif 3 구문')
else:
print('이것도 저것도 아니다')
#순서대로 실행한다. 그러다가 참인 구문이 나오면 그 elif 구문에서 output이 출력되고 코드는 빠져나간다.
반복문
for i in mylist:
print(i)
반복문 에서의 continue ( = skip ) : continue와 같이 묶여있는 부분은 먼저 돌았든 말든 skip한다. 멈추지 않고 계속 돈다.
for i in mylist:
# 코드를 입력해 주세요 #
if i%2==1:
continue
#continue를 쓰게 될 경우, continue 아래 구문은 skip된다.
#즉, 홀수이면 continue(skip)하고 다음 for 문을 돌게 한다.
########################
print(i)
반복문에서의 break : 그냥 멈추는 것
for i in mylist:
# 코드를 입력해 주세요 #
if i >= 6:
print('break')
break
#break의 경우에는 그 이후 부분도 아예 돌지 않고 완전히 for 문 자체를 중지시키고 빠져나온다.
########################
print(i)
출력 1 2 3 4 5 break
mylist = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even=[]
# 코드를 입력하세요
for i in mylist:
if i%2 == 0:
even.append(i)
print(even)
짝수만 들어간 것을 even 배열에 넣은 것이다. 위의 함수는 아래와 같이 comprehension이 가능하다.
List comprehension : 한 줄로 만들어버리는 것
even = [i for i in mylist if i % 2 == 0] # 코드를 입력하세요. mylist를 for 문으로 돈다. 그 와중에 만약 짝수일 경우에 i를 even배열에 집어넣는다
even = [i+2 for i in mylist if i % 2 == 0] # 최종적으로 i+2를 저장하는 것
문자열 가지고 놀기
len() = 문자열의 길이를 세는 함수. 공백도 한 개의 길이로 취급한다.
a = 'This is a pen'
a.split()
출력 : ['This', 'is', 'a', 'pen']
a = 'This-is-a-pen'
aa = a.split('-')
aa
출력 : ['This', 'is', 'a', 'pen']
aa[0] + aa[2]
출력 : Thisa
lower(), upper() : 모두 소문자, 모두 대문자로 만드는 함수
endswith, startswith : ~로 시작하는, ~로 끝나는
a = '01-sample.png'
b = '02-sample.jpg'
c = '03-sample.pdf'
a.startswith('01')
a.endswith('pdf')
출력 : True, False
startswith, endswith 응용
mylist = [a, b]
for file in mylist:
if file.endswith('jpg'):
print(file)
출력 : 02-sample.jpg
replace : 문자열 바꾸기
a = '01-sample.png'
a.replace('png','jpg')
a. #a의 원래 값이 바뀌는 것은 아니다. 즉 일시적으로만 바뀌는 것임. 새로운 변수에 넣으면 영구 보존됨. 혹은 덮어쓰고 싶으면 a = a.replace 이런식으로 재 선언하면 됨.
new_a = a.replace('.png', '.jpg')
new_a
출력 :
01-sample.jpg (a.replace)
01-sample.png(a)
01-sample.jpg(new_a)
strip() : 불필요한 양쪽 공백을 지움
import 를 하는 이유
출력.py (파이썬 파일 확장자)로 된 파일을 우리는 모듈 이라고 한다고 했었는데요, import 구문을 통해 해당 파일을 불러올 수 있습니다.
import pandas
위의 코드는 pandas라는 모듈을 우리가 불러오겠다라는 의미이며, 이미 colab에서 유명한 모듈은 설치가 되어 있는 상태이기 때문에, 우리가 따로 설치할 필요없이 가져올 수 있다.
from ~ import ~
from pandas import DataFrame
pandas 의 모듈에서 dataframe이라는 한 페이지를 불러오겠다는 것이다.
사실상 pandas 모두를 불러와도되지만, 정말 이 페이지 말고는 쓸 일이 없다면 리소스 낭비이므로 이렇게 일부만 데리고 오는것도 방법이다.
alias : 별칭 붙이기.
import pandas as pd
데이터 분석에서 자주 쓰이는 모듈들
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
numpy: 과학 계산을 위한 패키지
pandas: 데이터 분석을 할 때 가장 많이 쓰이는 패키지
matplotlib: 시각화를 위한 패키지
seaborn: 시각화를 위한 패키지 (matplotlib을 더 쉽게 사용할 수 있도록 도와주는 패키지)