예제 #1
0
def safe_sum(a, b):
    if type(a) != type(b):
        print("더할수 있는 것이 아닙니다.")
        return
    else:
        result = sum(a, b)
    return result
예제 #2
0
def _init_() :              # 초기화함수


# 모듈
# mod1.py                   #저장할 파일명
def sum(a,b):
    if type(a) != type(b):  #타입형이 다르면 에러문 만들고 끝내도록
         print("더할수 있는 것이 아닙니다.")
         return
    else:
         result = sum(a,b)
         return result
# ----------------- 다른파일
import mod1
print(mod1.sum(3,4))
   7
예제 #3
0
# 2. sys.path에 경로를 추가해서 사용하는 방법
#sys모듈을 이용해서 파이썬 라이브러리가 설치되어 있는 디렉토리를 확인 할 수 있다.
import sys

print(sys.path)
#sys.path에 우리의 모듈의 위치를 추가해주자. 리스트 형태이므로 append로 저장 가능
sys.path.append('./ch05_python advance')

###모듈 만들고 불러보기
#mod1.py
import sys

sys.path.append('./ch05_python advance')
import mod1

print(mod1.sum(3, 4))  #7이 나온다.

#mod1.py에 safe_sum 함수 추가
print(mod1.safe_sum(3, 4))
print(mod1.safe_sum(1, 'a'))

#sum을 바로 쓰고 싶을 때
from mod1 import sum

print(sum(3, 4))

#sum과 safe_sum모두 사용하고 싶을 때
from mod1 import sum, safe_sum
from mod1 import *

# mod1.py
from mod1 import sum, safe_sum

print(sum(3, 4))
print(sum(3, 4))
print(sum(3, 4))
# print(sum(3,'4'))
# print(mod1.safe_sum(3,'4'))
# print(mod1.safe_sum(3,4))
print(safe_sum(3, 4))
예제 #5
0
import sys
sys.path.append("/Users/jinju/Desktop/취업준비/jumpToPython/05_module")

import mod1
print(mod1.sum(3, 4))
print(mod1.safe_sum(3, 4))
mod1
예제 #6
0
# from 모듈명 import 모듈 함수
# 모듈 사용 시 해당 모듈의 클래스, 함수, 변수 등을 모듈명 없이 사용할 수 있음
# sum()

# import mod1
# print("mod1 모듈의 sum 함수 사용 : {0}".format(mod1.sum(3, 4)))

# print()

# print("mod1의 safe_sum 함수 사용 : {0}".format(mod1.safe_sum(3, 4)))
# print("mod1의 safe_sum 함수 사용 : {0}".format(mod1.safe_sum(1, "a")))

# from 절을 사용하여 mod1의 sum, safe_num을 모두 불러와 사용하기 때문에 mod1을 붙여서 사용하면 오히려 오류가 발생함
from mod1 import sum, safe_sum

print("mod1 모듈의 sum 함수 사용 : {0}".format(sum(3, 4)))  # mod1을 붙이면 오류가 난다.

# 문제 1) 사칙연산을 위한 계산기 프로그램을 모듈을 활용한 방식으로 제작하세요
# 모듈명 : Cal
# 사칙연산 함수명 plus, minus, multi, divide
# 각각 함수는 매개 변수를 2개씩 가지고 있음(first, second)

print()

# import Cal

# print("Cal 모듈 plus 함수 사용 : {0}".format(Cal.plus(4, 2)))
# print("Cal 모듈 minus 함수 사용 : {0}".format(Cal.minus(4, 2)))
# print("Cal 모듈 multi 함수 사용 : {0}".format(Cal.multi(4, 2)))
# print("Cal 모듈 divide 함수 사용 : {0}".format(Cal.divide(4, 2)))
예제 #7
0

#1.해당경로로 가서 ptrhon 실행
#2.import mod1
#3.print(mod1.sum(1,2))


def safe_sum(a, b):
    if type(a) != type(b):
        print("더할수 있는 것이 아닙니다.")
        return
    else:
        result = sum(a, b)
    return result


#print(mod1.safe_sum(1, 'a'))
#더할 수 있는 값이 아닙니다.
#None

from mod1 import sum
sum(3, 4)  #함수의 바로 사용

from mod1 import *  #mod1 파일의 모든 겍체

#main 다음 객체만 실행되도록 한다.
if __name__ == "__main__":
    print(safe_sum('a', 1))
    print(safe_sum(1, 4))
    print(sum(10, 10.4))
예제 #8
0
# import mod1 all import
from mod1 import sum, sub

a = sum(1, 2)

b = sub(2, 1)

print(a)
print(b)
예제 #9
0
from mod1 import sum, safe_sum

print(sum(3, 4))  # 7
print(safe_sum(3, 4))  # 7
예제 #10
0
### Module ###

import mod1

print(mod1.sum(3, 4))  # 7

print(mod1.safe_sum(3, 5))  # 8
print(mod1.safe_sum(3, 'a'))
# You can't add a to b
# None

from mod1 import sum, safe_sum
# from mod1 import *

print(sum(5, 10))  # 15

import mod2

a = mod2.Math()
print(a.solv(2))  # 12.566368

### another way to import module ###

# import sys
# sys.path # You can show the directory built in Python Library
# sys.path.append("~/Python/J2P/MyModules")

### setting PythonPATH

# set PYTHONPATH=C:\Python\Mymodules : win
예제 #11
0
#!/usr/bin/env python
import sys
import mod1
import mod2
#print sys.path

print "sum module test"
print str(mod1.sum(10, 20))
print
print "strsum module test"
print mod2.strsum("Hello", "World")
예제 #12
0
#_*_ coding: utf-8 _*_
from mod1 import sum, safe_sum
print sum(3,4)
print safe_sum(3,4)
예제 #13
0
import sys
import mod1

print(mod1.sum(2, 3))
print(mod1.safe_sum(2, '3'))

print(mod1.PI)
a = mod1.Math()
print(a.solv(3))

# print the directory installed python library.
print(sys.path)

# if you want to load a module, then you can append its path to sys.path.
# or use PYTHONPATH (환경변수) as 'set PYTHONPATH=C:/'
sys.path.append("C:/")
print(sys.path)
예제 #14
0
def test_sum():
    assert 7 == mod1.sum(3,4)
예제 #15
0
def test_sum():
    assert 7 == mod1.sum(3, 4)
예제 #16
0
# module_prac.py

import mod1
print(mod1.safe_sum(3,'a'))
print(mod1.sum(10,20))

import mod2
result = mod2.sum(3,4)
print(result)

# mod1.py
def sum(a,b):
    return a+b

def safe_sum(a,b):
    if type(a) != type(b):
        print("더할수 있는 것이 아닙니다.")
        return
    else:
        result = sum(a,b)
    return result

if __name__ == "__main__":
    print(safe_sum('a',1))
    print(safe_sum(1,4))
    print(sum(10,10.4))

# mod2.py
PI = 3.141592
class Math:
    def solv(self, r):
예제 #17
0
import mod1
import mod2

# use mod1
print(mod1.sum(1, 2))
print(mod1.safe_sum(1, "aa"))
print(mod1.safe_sum(1, 2))

# use mod2
print(mod2.PI)
a = mod2.Math()
print(a.solv(2))
print(mod2.sum(mod2.PI, 4.4))
예제 #18
0
#모듈이란? 미리 만들어 놓은 py 파일을 함수 변수 클래스를 쓰겠다
# seems like 라이브러리?

#만약 다른 폴더에 모듈이 있을경우 sys 에 경로를 추가해주고 from 으로 가져온다.

import sys
sys.path.append("C:\\Users\\dkrle\\Desktop\\project\\python\\subfolder")
from mod2 import add
from mod1 import sum

#이렇게 모드1 안에 있는 함수임을 명시해줘야하나 보다.
#import mod1 이라고 해줄때는 밑과 같이 적는다.
#print(mod1.sum(4,5))

#from mod1 import sum 이라고 해주면 밑과 같이 해준다.
print(sum(4, 5))
print(add(4, 5))

#모듈에 print 해주니까 print 도 불러오고 sum도 불러옴

# 만약 패키지 이면 이게 진짜 라이브러리랑 비슷 ㅇㅇ
# game/
#   __init__.py
#   sound/
#       __init__.py
#       echo.py
#   graphic/
#       __init__.py
#       render.py
# 위와 같이 폴더가 구성되어 있다면
# from game.sound import echo
예제 #19
0
#_*_ coding: utf-8 _*_
#import urlopen
import mod1

print mod1.sum(1,2)
print mod1.safe_sum(1,2)
print mod1.safe_sum(1,'a')
예제 #20
0
import mod1 as cal
print(cal.sum(2, 3))
print(cal.mul(3, 3))
예제 #21
0
#-*- coding: utf-8 -*-

from mod1 import sum,safe_sum

print sum(1,2)
print safe_sum(1,2)
예제 #22
0
import mod1

print(mod1.sum(3,4))
예제 #23
0
# 모듈 만들고 불러 보기
print('1. 모듈 만들고 불러 보기')
import mod1
print('mod1.sum(3,4) = {}'.format(mod1.sum(3, 4)))

print('\nmod1.safe_sum(1,\'a\') =')
mod1.safe_sum(1, 'a')
"""
mod1.sum, mod1.safe_sum 처럼 쓰지 않고 그냥 sum, safe_sum 처럼 함수를 쓰고 싶은 경우도 있을 것이다.
이럴 때는 'from 모듈이름 import 모듈함수' 를 사용하면 된다.

ex)
from mod1 import sum
sum(3, 4)
>> 7
"""
print()
# if __name__ == "__main__" : 의 의미
# mod1.py 참고

import mod2  # __name__ == "__main__" 이 거짓이 되므로 아무런 값도 출력되지 않는다.
print('mod2.PI = {}'.format(mod2.PI))
a = mod2.Math()
print(a.solv(2))
print(mod2.sum(mod2.PI, 4.4))
예제 #24
0
# load module
import mod1 # have to use same directory

print(mod1.sum(3, 4)) # 7
print(mod1.safe_sum(4, 'a')) # error

# load function
from mod1 import sum

print(sum(3, 5)) # 8

from mod1 import sum, safe_sum
from mod1 import *

# load var, class
import mod2

print(mod2.PI)
a = mod2.Math()
print(a.solv(2))
print(mod2.sum(mod2.PI, 4.4))

from mod2 import Math, PI
b = Math()
print(b, PI)

# another directory module
import sys
# sys.path.append("directory")
예제 #25
0
from mod1 import sum  # 이렇게 쓰면 한번에 쓸 수 있지만 한 sum 함수를 한번밖에 쓰지 못한다.
# 그래서 import 다음에 sum, safe_sum을 써주거나, *를 써준다 * = 모든 것.

print(sum(4, 3))
예제 #26
0
# 모듈 사용 시 해당 모듈명과 클래스, 함수, 변수 등을 모듈명.멤버로 사용해야 함
# mod.sum()

# from 모듈명 import 모듈 함수
# 모듈 사용 시 해당 모듈의 클래스, 함수, 변수 등을 모듈명 없이 사용할 수 있음

# import mod1
# print("mod1 모듈의 sum 함수 사용 : {0}".format(mod1.sum(3,4)))

# print()
# print("mod1의 safe_sum 함수 사용 : {0}".format(mod1.safe_sum(3, 4)))
# print("mod1의 safe_sum 함수 사용 : {0}".format(mod1.safe_sum(1, "a")))

# from 절을 사용하여 mod1의 sum, safe_sum을 모두 불러와 사용하기 때문에 mod1을 붙여서 사용하면 오히려 오류가 발생함
from mod1 import sum, safe_sum
print("mod1 모듈의 sum 함수 사용 : {0}".format(sum(3, 4)))

# 문제1) 사칙 연산을 위한 계산기 프로그램을 모듈을 활용한 방식으로 제작하세요
# 모듈명 : Cal
# 사칙연산 함수명 : plus, minus, multi, divide
# 각각 함수는 매개 변수를 2개씩 가지고 있음(first, second)
print()
print("==문제1==")
import Cal
print("Cal 모듈의 plus 함수 사용 : {0}".format(Cal.plus(3, 4)))
print("Cal 모듈의 minus 함수 사용 : {0}".format(Cal.minus(3, 4)))
print("Cal 모듈의 multi 함수 사용 : {0}".format(Cal.multi(3, 4)))
print("Cal 모듈의 divide 함수 사용 : {0}".format(Cal.divide(3, 4)))

# 클래스나 변수 등을 포함한 모듈
# 일반 함수가 들어있는 모듈과 동일함
예제 #27
0
import mod1
# mod1을 import함

from mod1 import sum
# sum이라는 함수만 import함

from mod1 import *
# *은 mod1 모듈에 있는 모든 것을 import하다는 점이다.
# 하지만 모든 것이 import되는 것은 아니다.
# 자세한 내용은 mod1.py의 주석을 확인하자.

print(sum(1, 2))
# import 했기 때문에 사용 가능하다

new_instance = cal()
print(new_instance.mul(3, 4))
# class 또한 import 해서 정상적으로 사용이 가능하다.

print(_private_num)
print(__all_private_num)
예제 #28
0
def plus5(a):
    return mod1.sum(5 + a)