비교 연산자

: 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

+ Recent posts