공부한 날짜: 2021.10.2n

기록한 날짜: 2021.11.20 

 

  • 파이썬 내장 함수
  • 자주 사용하는 함수 위주로 실습/ 사용하다보면 자연스럽게 숙달 

 

  • all,any : iterable 요소 검사 (참, 거짓)

 

  • enumerate: 인덱스 + iterable 객체 생성!!

- for i, name in ['abc','bcd','deg'] \n print(i,name)이면 오류남. enumerate 이용하기 

 

 

  • filter : 반복 가능한 객체 요소를 지정한 함수 조건에 맞는 값 추출!!
  • 두가지 방식 모두 같은 결과값 출력 

 

  • map: 반복가능한 객체 요소를 지정한 함수 실행 후 추출 
  • 표현 방법 두가지 

 

  • round() : 반올림

 

  • sorted : 반복가능한 객체(Iterable)를 정렬 후 반환
  • 반복 가능한 객체: list, dictionary, tuple,set 무조건 외우기 

 

  • zip: iterable의 요소를 묶어서 반환/ zip함수는 tuple로 짝을 만들어서 반환 

 

 

외장함수

 

  • 예제1 

  • 예제2

  • 예제3

  • 예제4: open(), dump(), 'wb'

  • 예제5 : load()

 

  • 예제6 : os -> 환경 변수, 디렉토리(파일), 처리 관련, 운영체제 작업 관련

-mkdir, rmdir(비어있으면 삭제) , rename

 

  • 예제7 : getcwd() -> 현재경로

 

  • 예제8~11 : 시간 관련 함수 

 

  • 예제 12 : time.sleep()

 

  • 예제 13: random.random()/randint()/randarange()/shuffle()/choice()

 

  • webbrowser

 

파일 읽기  및  쓰기 

- r: 읽기 모드 / w: 쓰기 모드 / a : 추가모드 / t : 텍스트 모드 / b: 바이너리 모드 

- 상대 경로('../, ./'), 절대경로('users/hello/desktop...')

 

  • 예제1

 

  • 예제2

 

  • 예제3
 

 

  • 예제4

 

  • 예제5

 

  • write 예제

 

  • 예제1

 

  • 예제2

 

  • 예제3

 

  • 예제4

 

  • 예제5

'Dev Language > Python' 카테고리의 다른 글

[파이썬 중급] #2 매직 메소드(스페셜 메소드)  (0) 2021.11.15
[파이썬 중급] #1 클래스& 메소드 심화  (0) 2021.11.15
[파이썬 기초] #4  (0) 2021.11.15
[파이썬 기초] #3  (0) 2021.11.15
[파이썬 기초] #2  (0) 2021.11.15
  • 공부한 날짜: 2021.10.2n
  • 기록: 2021.11.19

 

  • 시작 전 기본개념
  • 클래스(붕어빵 틀) and 인스턴스(클래스를 가지고 코드에서 사용하는 어떤 객체) 차이 이해
  • 네임스페이스: 객체를 인스턴스화 할 때 저장된 공간
  • 클래스 변수: 직접 접근 가능하고 공유함
  • 인스턴스 변수: 객체마다 별도 존재
  • 예제 #1

-object는 상속 받는다. ()/(object) 다 가능 

-firstdog가 클래스 변수 이므로 클래스, 인스턴스 모두 공유한다 

 

  • 예제2 : self 이해하기 

- 매개변수, self가 없으면 클래스 / self가 있으면 인스턴스 메서드(인스턴스 메서드에 대해 공부 더 해보기)

 

  • f 호출하는 방법 두가지: 인스턴스로 바로 호출 or 클래스-> 메서드 -> 파라미터 순으로 호출 

-func1()은 클래스이므로 파라미터 없이 바로 호출(이게 맞나?)

 

  • 예제3

 

  • 인스턴스 생성, 인스턴스 하나 생길 때마다 stock_num 하나씩 증가 

 

 

  • 예제4

 

  • 인스턴스 생성 

 

-여기서 Info()에는 왜 아무런 파라미터도 안들어 감?? Info(self)로 선언 되어서 그런가. 찾아보기 

 

 

 

들어가기 전 개념 

 

  • Module: 함수, 변수, 클래스 등 파이썬 구성 요소 등을 모아놓은 파일 
  • 파이썬 패키지(폴더)
  • 패키지 작성 및 사용법
  • 파이썬은 패키지로 분할된 개별적인 모듈로 구성된다
  • __init__.py: Python 3.3부터는 없어도 패키지로 인식 -> 단, 하위 호환을 위해 작성 추천
  • 상대경로: ..(부모디렉토리) .(현재 디렉토리) -> 모듈 내부에서만 사용
  • 오픈 소스 등에 쓰일  있으므로 모듈 사용은 중요하다 

 

  • 모듈 불러오는 법 

 

 

파이썬 예외처리의 이해

  • 예외는 반드시 처리해야 한다
  • 로그는 만드시 남긴다
  • 예외는 던져질 수 있다(다른데로 처리를 위임할 수 있다)
  • 어떤 예외는 무시(되도록이면 하지 말기)
  • 예외 없는 것을 가정하고 프로그램 작성 -> 런타임 때 예외 발생 시 예외처리 권장(EAEP)

 

  • 예외 처리 종류
  1. Syntax Error
  1. TypeError
  2. Name Error
  3. IndexError
  4. ValueError

 

1. SyntaxError: 문법 오류

2. NameError : 참조 없음

3. ZeroDivisionError(0으로 나누는 경우)

4. IndexError

5. KeyError

6. AttributeError: 모듈, 클래스에 있는 잘못된 속성 사용 예외

7. ValueError, 시퀀스 자료구조에서 존재하지 않는 참조시 발생

 

8. FileNotFoundError

 

9. TypeError: 자료형에 맞지 않는 연산을 수행 경우 (리트스+튜플, 리스트+str,,,)

 

 

예외처리 기본 

  • try: 에러가 발생 할 가능성이 있는 코드 실행
  • except 에러명1: 여러개 가능
  • except 에러명2:
  • 예시: except Exception as e / except ValueError(Exception)
  • else: try 블록에 에러가 없을 경우 실행
  • finally: 항상 마지막에 실행 / 예외가 발생해도 한번은 실행
  • raise로 예외 직접 발생

 

'Dev Language > Python' 카테고리의 다른 글

[파이썬 중급] #1 클래스& 메소드 심화  (0) 2021.11.15
[파이썬 기초] #5  (0) 2021.11.15
[파이썬 기초] #3  (0) 2021.11.15
[파이썬 기초] #2  (0) 2021.11.15
[파이썬 기초] #1  (0) 2021.11.15
  • 반복문(for문, while문) 연습 

 

  • 1~1000합 구현하는 두가지 방법 

1.

2.

 

  • x.get() or x[] : 딕셔너리에서 키 값만 출력하기 

 

  • x. values() : 딕셔너리에서 value만 출력 

 

  • items(): 딕셔너리에서 (key: value) 출력

 

  • for-else 문 : for문에 해당하는 거 없으면 else문 하나만 실행하고 끝냄

 

  • 구구단 구현 

 

 

  • 람다식 -> 메모리 절약, 가독성 향상, 코드 간결
  • 함수는 객체 생성 -> 리소스(메모리) 할당
  • 람다는 즉시 실행 함수(Heap 초기화) -> 메모리 초기화
  • 남발 시 가독성 오히려 감소 할 수 있음

 

  • Lambda 형식 
  • Ex) lambda x,y : x+y

 

 

  • Input 사용법

'Dev Language > Python' 카테고리의 다른 글

[파이썬 중급] #1 클래스& 메소드 심화  (0) 2021.11.15
[파이썬 기초] #5  (0) 2021.11.15
[파이썬 기초] #4  (0) 2021.11.15
[파이썬 기초] #2  (0) 2021.11.15
[파이썬 기초] #1  (0) 2021.11.15
  • x,y= divmod(a,b) : a를 b로 나눈 몫을 x에 ,나머지를 y에 대입하는 함수
  • pow(x,y), x**y  : x의 y 제곱
  • math.ceil(k): k 이상의 수 중에서 가장 작은 정수 
  • '~' in str_01 :특정 문자가 단어에 있는지 확인 / '~' not in str_01 : 없는지 확인 
  • capitalize() : 단어 첫 글자 대문자로 만들어줌
  • endswith(): 마지막 문자가 무엇인지 알려줌
  • replace('a','b'): 단어에서 a를 b로 바꾸어줌
  • sorted() : 단어 한글자씩 분리시키고 알파벳 순서대로 정렬 / 숫자는 크기 순서대로 정렬
  • split() : 특정 단어를 기준으로 분리할 때 사용함 
  • reverse(): 크기가 큰 것부터 작은거 순으로 정렬
  • insert(a,b): a인덱스에 b를 삽입한다 
  • 슬라이싱 : 긴 문자열에서 내가 원하는 단어만 뽑아내기
  • print(ord(a)): 문자를 숫자(아스키코드)로 바꿈. 97이 출력됨 
  • chr(122): 숫자를 문자로
  • 이스케이프 문자 :  \' or  \" -> '  또는 " 출력됨 
  • 탭: \t , 줄바꿈 : \n
  • 문자, 숫자는 같이 연산 못함(int + str 불가능)
  • a.index(2) ==  a[2]. 같은 것을 의미함

 

  • 리스트
  • 튜플
  • 딕셔너리
  • 집합

 

  • 리스트: 다양한 자료형 담을 수 있는 컨테이너이고 가변(중복, 수정,삭제 모두 가능) 자료구조
  • 리스트 변경 

 

  • 튜플: 컨테이너, 순서/중복 ok, 수정/삭제 nope(불변)
  • index(3): 3의 인덱스를 출력. 3번째 인덱스 값 출력하는 거 아님!!
  • count(2): 2의 개수 출력 

 

  • Packing & Unpacking 
  • Packing(튜플을 생성하는 것과 똑같음)

 

  • Unpacking

 

  • Dictionary
  • 딕셔너리 선언

 

-특정 key의 value 가져오기 : 되도록이면 a.get('name') 방식 사용

- keys(): 딕셔너리에서 key만 가져오는 함수

-values(): value만 가져오는 함수

 

  • 딕셔너리 key: value 추가 

 

  • items(): 

 

  • pop():

  • popitem():

 

 

  • 딕셔너리 수정

 

  • 집합
  • set에서는 인덱스 슬라이싱 안됨

 

  • 집합 선언

 

  • 집합을 튜플로 변환 

 

  • 집합을 리스트로 변환 

 

  • 집합 연산

- s1&s2, s1.intersection(s2)

-s1 | s2, s1.union(s2)

-s1-s2, s1.difference(s2)

-s1.isdisjoint(s2)

-s1.issubset(s2)

-s1.issuperset(s2)

-add(): 원소 추가 

-remove(): 원소 제거, 예외 발생 

-discard(): 원소 제거, 예외 발생하지 않음

 

  • clear()

'Dev Language > Python' 카테고리의 다른 글

[파이썬 중급] #1 클래스& 메소드 심화  (0) 2021.11.15
[파이썬 기초] #5  (0) 2021.11.15
[파이썬 기초] #4  (0) 2021.11.15
[파이썬 기초] #3  (0) 2021.11.15
[파이썬 기초] #1  (0) 2021.11.15

+ Recent posts