전체에서 접근할 수 있는 변수를 전역 변수(Global variable)라고 부르고,
전역 변수에 접근할 수 있는 범위를 전역 범위(Global scope)라고 합니다.
함수 안에서 만든 변수는 지역 변수(Local variable)라고 합니다. 지역 변수는 만든 함수 안에서만 접근할 수 있고, 함수 바깥에서는 접근할 수 없다. 지역 변수를 접근할 수 있는 범위는 지역 범위(Local scope) 라고 한다. (출처 : 모두연 교육강의)
변수를 함수 안에서 변경할 수 있는 방법은 함수 안에 global 예약어를 사용하면 된다.
주의할 점은 global 예약어와 할당하는 코드(=)를 같이 쓰면 안된다.
클로저
- 조건 1 : 어떤 함수의 내부 함수일 것
- 조건 2 : 그 내부 함수가 외부 함수의 변수를 참조할 것
- 조건 3 : 외부 함수가 내부 함수를 리턴할 것
쉽게 설명하면
조건 1: "어떤 함수의 내부 함수일 것"
- 클로저는 항상 함수 안에 또 다른 함수가 있어야 해.
- 왜냐하면 내부 함수가 외부 함수의 환경(변수 등)을 기억해야 하니까.
비유:
- 마치 다락방 안에 상자가 있는 상황이야. 상자가 밖으로 나갈 수 있으려면, 다락방(외부 함수) 안에 있어야 해!
예제:
예외처리
오류(Error)
- 프로그래밍 실행 전에 발생하는 오류 → 구문 오류(Syntax error) :구문 오류는파이썬 문법에 맞지 않아서 프로그래밍 실행도 전에 오류(코드를 알맞게 수정해야 해야 합니다)
- 프로그래밍 실행 후에 발생하는 오류 → 예외(Exception) 또는 런타임 오류(Runtime error) : 이는 프로그래밍이 실행된 후에 나오는 에러입니다.
- 이런 예외를 해결하는 모든 것을예외 처리(Exceptional Handling) 라고 하며 처리방법은 아래 두가지(조건문 사용 / try 구문 사용)
try - except 구문
어떤 상황에서 예외가 발생하는지 완벽하게 이해하지 않아도 프로그램이 강제로 죽어 버리는 상황을 막을 수 있습니다.
try - except - pass 구문
try - except - else - finally 구문
try 구문은 단독으로 쓰일 수 없고 except 또는 finally 구문과 함께 쓰여야 합니다. else 구문은 except와 함께 쓰이고, except 구문 뒤에 사용해야 합니다. |
- try + except
- try + except + else
- try + except + finally
- try + except + else + finally
- try + finally
SyntaxError : 잘못된 문법
NameError : 참조변수 없음
ZeroDivisionError : 0으로 나눌 수 없음
IndexError : 인덱스 범위 벗어남
ValueError : 참조 값이 없음
KeyError : 키 없음 에러 (주로 딕셔너리 사용시)
AttributeError : 모듈, 클래스의 잘못된 속성을 사용함
FileNotFoundError : 파일 못 찾음
TypeError : 타입이 맞지 않음
모듈, 패키지, 라이브러리
표준 모듈 (기본 내장 모듈)
- 표준 모듈 : 파이썬 내장 모듈 :
random( 난수를 발생시키는 모듈 ) , math( 수학과 관련된 모듈입니다. 출력값은 대부분 float 자료형 ), time( 시간과 관련된 모듈 ), keyword( 키워드를 출력하거나 그 값이 키워드인지 확인할 수 있는 모듈) - 외부 모듈 : 개발자들이 새롭게 만든 모듈 :
from import를 사용하면 모듈의 일부분만 가져올 수 있다.2
from import as : 모듈 일부분만 가져오기 + 키워드
패키지(package) :
여러 모듈을 묶은 것입니다. 따라서 패키지에 들어있는 모듈도 import를 사용하여 가져온다.
라이브러리( 여러 패키지와 모듈을 모아둔 것 )
프레임워크( 프로그래밍을 진행할 때 필수적인 코드, 알고리즘 등과 같이 어느 정도의 구조를 제공해준다 )
라이브러리 / 프레임워크 차이점
내가 원하는 걸 직접 골라서 사용 | 정해진 규칙에 따라 작업을 진행해야 함 |
내가 주도적으로 일을 진행함 | 프레임워크가 나를 주도해서 작업을 진행함 |
예: 연필, 자, 가위 등 도구를 골라 사용하는 것 | 예: 요리 학원에서 레시피대로 요리하는 것 |
'데이터 분석가:Applied Data Analytics > 파이썬' 카테고리의 다른 글
사각형 넓이 구하기 와 키오스크 만들기 (0) | 2025.02.04 |
---|---|
클래스(Class)와 객체(Object) (0) | 2025.01.31 |
이터레이터, 제너레이터, 데코레이터, 람다, 일급객체 (0) | 2025.01.23 |
리스트, 딕셔너리, 컴프리헨션 (0) | 2025.01.22 |
파이썬 (변수, 튜플, if문) (2) | 2025.01.21 |