import re
print(re.match("Apple", "Apple TV"))
print(re.match("Samsung", "Apple TV"))

#--- 출력 ---#
<re.Match object; span=(0, 5), match='Apple'>
None

정규표현식에서 문자열을 판단하기 위해서는 "re"라는 묘듈을 import해서 사용합니다.

 

첫번째 출력줄에서는 "Apple TV"라는 문자열에 "Apple"이라는 단어가 있기때문에

<re.Match object; span=(0, 5), match='Apple'> 와 같이 반환되는것을 확인할 수 있으며

 

두번째  출력줄에서는 "Apple TV"라는 문자열에 "Samsung"이라는 단어가 없기때문에

None이라는 것이 출력되는것을 확인할 수 있습니다.

파이썬 묘듈은 파일 한개라면, 파이썬 패키지는 폴더로 구성되어있습니다

다음과 같이 디렉토리와 파일을 구성합니다.

폴더안에 __init__.py 라는 파일이 있다면 해당 폴더는 패키지로 인식하게 된다.

그리고 __init__.py파일에는 코드를 작성하지 않아도 된다.

 

tools이라는 폴더 안에는 checker.py, output.py 2가지 파일을 만들었습니다.

# checker.py
user_data = "Apple"

def init():
    print("init done.")

def user(name):
    if name == user_data:
        return True
    else:
        return False

checker.py파일에 위와 같은 내용을 작성하였습니다.

1. user_data이라는 변수에 Apple이라는 단어를 저장합니다.
2. init이라는 함수가 실행되면 "init done."이라는 문장을 출력합니다.
3. user이라는 함수를 만들고 입력받는 인자의 변수를 name이라고 설정합니다.
3.1 만약에 name이라는 변수가 user_data("Apple")이라는 내용과 일치할때 True를, 아니면 False를 반환합니다.

 

def log(data):
    print(f'<CNOSOLE> {data}')

def sum_log(a,b):
    return a + b

그리고 output.py에는 다음과 같이 작성하였습니다.

1. log이라는 함수를 만들고 입력받는 인자의 변수를 data라고 설정합니다.
1.1 "<CONSOLE>이라는 내용을 앞에 추가하고 뒤에는 data이라는 변수의 내용을 추가하여 출력합니다.
2. sum_log이라는 함수를 만들고 입력받는 인자의 변수를 a와 b로 설정합니다.
3. 변수 a와 b를 더해서 return합니다.

 

import tools.output
import tools.checker

tools.checker.init()
tools.output.log("Hello Python")
print(tools.output.sum_log(50, 60))
print(tools.checker.user("Apple"))
print(f'user data is {tools.checker.user_data}')

마지막으로 main.py는 다음과 같이 작성하였습니다.

패키지를 사용하기 위해서는 import 패키지.모듈 형식으로 사용하며

뒤에는 각 묘듈에 포함되어있는 함수를 붙여 사용할 수 있습니다

먼저 다음과 같이 하나의 폴더 안에 두가지의 파이썬 파일을 생성해 준다.

 

abcd = 10

def runner(n):
    return n + abcd

extensions.py는 모듈이 된다.

 

그다음 extensions.py라는 파일에 위 내용을 작성해준뒤 저장해준다.

extensions이라는 파일을 모듈로 만들었는데 abcd라는 변수에 숫자 10을 저장하고

runner이라는 이름을 가진 함수를 만들어준다.

 

그러면 모듈을 만들었으니 만들 모듈을 사용해야한다.

main.py에 다음과 같이 코드를 작성해 준다.

import extensions

print(extensions.abcd)
print(extensions.runner(50))

모듈을 만들어 불러올때는 모듈의 파일 이름을 입력하여 import해준다.

+ Recent posts