비교 연산자
: True와 False는 표현식에서 바로 쓰이기 보다 표현식에서 생성 됨
: 비교 연산자로 비교를 수행한 후 생성하는 방식이 흔하게 사용 됨
기호 | 연산 |
> | ~보다 크다. |
< | ~보다 작다. |
>= | ~보다 크거나 같다. |
<= | ~보다 작거나 같다. |
== | ~와 같다. |
!= | ~와 같지 않다. |
배타적 논리합
: x와 y중 정확히 하나만 True여야 한다는 의미
b1 != b2
연산자 결합
: 산술 연산자는 비교 연산자보다 우선순위가 높음
: 비교 연산자는 불 연산자보다 우선순위가 높음
: 모든 비교 연산자는 서로 우선순위가 같음
단락 평가
: 불 연산자인 and나 or을 포함하는 표현식을 평가할 때 왼쪽부터 오른쪽으로 평가 도중에 평가한 정보가 충분하면 아직 평가하지 않은 피연산자가 있어도 평가를 멈춤
# 12/0 은 에러가 나는 표현식임
>>> ( 13 > 1 ) or ( 12 / 0 )
True
문자열 비교
: 수를 비교하는 방식으로 문자열을 비교할 수 있음
: 문자열 내 문자는 정수로 표현되는데 미국 표준부호(ASCII)로 인코딩 되기 때문
: 모든 대문자가 모든 소문자보다 먼저 나오기 때문에 대문자보다 소문자가 더 큰 수
[ 사전순 ]
>>> 'D' < 'd'
True
>>> 'F' > 'a'
False
>>> 'kfc' < 'kfd'
True
>>> 'kfc' < 'kfcg'
True
[ 문자열 포함 여부 ]
: 대/소문자 구분
: 빈 문자열(' ')은 모든 문자열의 부분 문자열
>>> 'Good Boy' in 'you are a Good Boy'
True
>>> 'bird' in 'i am a bob'
False
# 빈 문자열
>>> '' in 'kfc'
True
>>> '' in ''
True
모듈
: 한 파일로 묶인 변수와 함수의 컬렉션을 모듈이라 함
: 한 모듈 내 변수와 함수는 어떤 식으로든 서로 연관되어 있음
모듈 Import
: 모듈 내 변수와 함수에 접근해서 사용하려면 Import를 해야함
: 모듈을 Import하면 모듈과 같은 이름의 변수가 생성 됨( 변수는 타입이 모듈인 객체 참조 )
import numpy
: 서로 다른 모듈이 같은 이름의 함수를 호출할 경우 마지막에 호출한 모듈의 함수로 대체됨
: 모듈 내 모든 요소를 Import하면 부정확한 함수에 접근하거나 올바르게 동작하지 않을 수 있음
* 파이썬은 모듈을 Import 하자마자 실행 하며 처음 Import할 때만 모듈을 로드하기 때문에 이미 목록에 있는 모듈을 로드하라는 요청이 들어오면 해당 요청을 건너뜀
모듈 전체 목록
: https://docs.python.org/release/3.6.0/py-modindex.html 참고
사용자 정의 모듈
: 코드를 .py 확장자 파일에 작성 후 저장하면 Import해서 재사용 가능
모듈 복구
: Import한 모듈의 변수나 함수의 값을 변경하고 셸을 재시작해 복구
: importlib 모듈의 reload함수를 사용해 모듈을 복구
* 시스템 모듈에는 동작하지 않음
Import할 때 실행할 코드 선택
: 한 모듈을 다른 모듈에서 Import하려면 두 모듈은 같은 폴더 내에 존재해야 함( 절대 경로를 쓰는 방법도 존재 )
: 모듈을 직접 실행할 때만 실행하고 Import할 때는 실행되지 않게 할 수 있음
: 모듈 내 특수 문자열 변수( __name__ )를 정의해서 구분함
# test.py 파일의 코드
print("__name__은", __name__)
# 실행하면 __name__변수를 생성하고 변수의 값이 __main__ 이므로
# 해당 프로그램이 메인 프로그램을 뜻함
__name__은 __main__
# test.py를 Import하면 결과는
__name__은 test
'프로그래밍 > Python' 카테고리의 다른 글
[Python] Ubuntu Server Python 버전 변경 (0) | 2023.02.01 |
---|---|
Python 공부 2일차(5장) (0) | 2021.06.01 |
Python 공부 1일차(1장~4장) (0) | 2021.05.30 |