Python_basic 13

Bigdata Bootcamp_20220906_12일차_python

#클래스의 특징 클래스란 여러개의 변수와 함수를 하나의 타입으로 묶어놓은 것 Person이라는 타입에 name, age, nation, method(), method1(), method2() 까지가 현상태 비슷한 특징을 가진 애들을 묶어놓으면 관리가 편해지는 장점 이렇게 묶어놓으면 발생하는 특징들(객체 지향 프로그래밍의 특징을 얻을 수 있다) 은닉성(캡슐화) : 클래스 안에 있어서 인스턴스로는 확인할 수 없게 보호하는 장치 상속: 클래스를 재사용할 수 있음 다형성 붕어빵 : 슈크림, 피자, 팥, 쑥... 하나의 타입 안에 다른 타입도 담을 수 있는 것 오버로딩, 오버라이딩 파이썬은 완벽한 객체지향을 제공하지는 못한다 #은닉성 - 클래스 안에 있어서 인스턴스로는 확인할 수 없게 보호하는 장치 - 외부에서 ..

Python_basic 2022.09.06

Bigdata Bootcamp_20220905_11일차_python

#객체지향 프로그래밍 OOP (Object Oriented Programming) 언어는 언어이고 OOP는 개발 방법론 중에 하나일 뿐 소프트웨어를 관리하고 개발하는 전체 과정에 대한 얘기 객체지향은 개념(기술, 정의) 소프트웨어 공학 기획 -> 요구사항분석 -> 설계 -> 개발 -> 베포 -> 유지보수 클래스나 객체는 소프트웨어를 기획하고, 만들고, 관리하는 방법일 뿐이다. # class(클래스) - 사용자가 정의하는 새로운 타입 - int, bool, str, float, list, tuple, range .... -> 파이썬에서 미리 만들어둔 클래스 - 이렇게 파이썬이 자체 제공하는 클래스(사람들이 자주 사용하는 클래스) 외에도 사용자가 직접 타입을 지정가능 -> 새로운 클래스를 만들어서 - 함수도..

Python_basic 2022.09.05

Bigdata Bootcamp_20220903_10일차_python

# 예외처리 예외(exception)란? 일반적으로 오류 혹은 에러 라고 불리웁니다. 프로그램 실행 중에 예외가 발생하면 '비정상종료'가 된다. 비정상 종료를 막기 위해서 에러(예외)가 발생된 이후의 문장은 정상적으로 수행하도록 처리하는 방법을 예외처리 라고 부른다 try: 예외가 발생할 가능성이 있는 코드 except: 예외가 발생할 때 실행할 코드 except: 예외가 발생할 때 실행할 코드 except: 예외가 발생할 때 실행할 코드 else: 잘 실행되면 실행할 코드 finally: 되든 안되든 반드시 실행할 코드 int(input('aaa')) ValueError Traceback (most recent call last) in ----> 1 int(input('정수 입력')) ValueErro..

Python_basic 2022.09.04

Bigdata Bootcamp_20220902_9일차_python

# filter 이터러블의 각 요소에 대해 function이 참인 것만 반환하는 요소의 이터레이터 filter(function, iterable) # 짝수만 판별해서 출력하는 필터를 하나 만들어주세요 # [2, 4] ex = [1, 2, 3, 4, 5] list(filter(lambda x : x % 2 == 0 , ex)) # filter(함수, 적용할자료) #[2,4] def find_even(a): if a % 2 == 0: return a list(map(find_even, ex)) list(filter(None, map(find_even, ex))) #None이 아닌 값들만 걸러줄 수 도 있음 #[2,4] # 리스트 컴프리헨션으로 30까지 리스트 만들어주시고 # 3의배수만 필터로 걸러내주세요. ..

Python_basic 2022.09.04

Bigdata Bootcamp_20220901_8일차_python

# 전역변수와 지역변수 지역변수(Local Variable) 변수를 메모리 주소 대신이 사용하는 이름 값을 저장하기 위해서 사용하는 메모리 위치가 두군데 있다. 글로벌 메모리 로컬 메모리(함수가 사용하는 메모리) 함수 안에서만 변수를 정의하면 로컬 메모리에 생성이 되고 그 변수는 지역변수 라고 부른다. 함수가 실행되는 동안에만 유지 함수가 종료되면 참조할 수 없다. 파라메터도 지역변수 a = '전역변수 - 언제나 남아있습니다' def func(): a = '지역변수 - 함수가 끝나면 사라집니다' return a #---------------------------------------------------------- a = '전역변수 - 글로벌 메모리에 저장됨' def func1(): b = '지역변수 ..

Python_basic 2022.09.01

Bigdata Bootcamp_20220831_7일차_python

#file 열고 읽기 readline() 한 줄씩 출력해주는 명령어 #readline() 예시 #text.txt = '''안녕하세요 #저는 정사도입니다. #반가워요''' with open('text.txt', 'r') as f: f.readline() #안녕하세요 f.readline() #저는 정사도입니다. f.readline() #반가워요 readlines() 파일의 모든 줄을 읽어서 각각의 줄을 요소로 갖는 리스트로 반환해줌 #readlines 예시 #text.txt = '''안녕하세요 #저는 정사도입니다. #반가워요''' with open('text.txt', 'r') as f: f.readlines() #['안녕하세요', '저는 정사도입니다.', '반가워요'] #함수(function) 수학적 의미..

Python_basic 2022.08.31

Bigdata Bootcamp_20220830_6일차_python

#depth가 2인 리스트에서의 for문 list1 = [ [ 2000, 550, 2550], [ 3400, 850, 4250], [54000, 15000, 69000] ] 예제 : 물가인상으로 매입가격이 변경되어 연지상회 역시 이윤과 판매가격을 업데이트해보려 합니다. list1에 담긴 판매가격에 10%를 반영해 list1에 소수 첫째자리에서 반올림하여 다시 저장해 주세요. (판매가격만 10% 인상. 원가는 그대로 둡니다.) for li in list1: for price in li: price = price*1.1 #물가 인상률 10% 반영 print(list1) 문제 - 처음에 짠 코드이다. 각 값에 접근하여 그 값을 업데이트 시켜주면 리스트에 반영이 될 것 이라고 생각했다. 하지만 몇 번을 돌려도 ..

Python_basic 2022.08.30

Bigdata Bootcamp_20220829_5일차_python

set1 = {'a', 'b', 'c', 'd'} for se in set1: print(se) b d a c 시퀀스 + for 문 *set의 경우에는 시퀀스이기나 눈에 보이는 순서대로 출력되진 않는다 sorted(set1) ['a', 'b', 'c', 'd'] sorted 함수를 통해 정렬된 리스트의 형태로 반환받을 수 있다. dict + for문 for key, value in sale.items(): print(key, value) 의 형태로 여러개의 값을 가진 인자가 for문을 돌 경우 받아올 수 있다. for와 if문을 섞어서 활용 ex) 숫자 1 입력 : 15 숫자 2 입력 : 22 15와 22사이의 합은 148 # 숫자1 입력 num1 = int(input('숫자1 입력: ')) # 숫자2 ..

Python_basic 2022.08.29

Bigdata Bootcamp_20220825_3일차_python

#중첩 조건문 조건문 안에 조건문을 넣는 경우를 중첩조건문이라고 부른다. age = input("나이를 정수로 입력하세요") # -25 # 조건문 안에 조건문을 넣는 경우를 중첩조건문이라고 부릅니다 # 첫번째 조건문 if age.lstrip('-').split('.')[0].isnumeric() == True: # '25' 로 판별은 하지만 원본은 그대로임 # print(age, type(age)) # # '-25' age = int(age.split('.')[0]) # int 25 # print(type(age)) # # 두번째 조건문 if 0

Python_basic 2022.08.25