# Download the helper library from https://www.twilio.com/docs/python/install
import os
from twilio.rest import Client
# Find your Account SID and Auth Token at twilio.com/console
# and set the environment variables. See http://twil.io/secure
account_sid = os.environ['TWILIO_ACCOUNT_SID']
auth_token = os.environ['TWILIO_AUTH_TOKEN']
client = Client(account_sid, auth_token)
message = client.messages \
.create(
body="Join Earth's mightiest heroes. Like Kevin Bacon.",
from_='+12542796380',
to='+821012341234'
)
print(message.sid)
# 패키지 & 모듈
# 패키지 == 라이브러리
# 패키지 = 모듈 1 + 모듈 2 = 패키지는 모듈들의 합
# 모듈 == 코드가 들어있는 파일
# 이 코드가 모여서 어떠한 기능을 구현함
# animal package
# dog, cat modules
# dog, cat modules can sat "hi"
from animal import dog # animal 패키지에서 dog 라는 모듈을 갖고와줘
from animal import cat # animal 패키지에서 cat 라는 모듈을 갖고와줘
from animal import * # animal 패키지가 갖고있는 모든 모듈을 다 불러와
# d = dog.Dog() # instance
# d.hi()
# c = cat.Cat()
# c.hi()
d = Dog() # instance
c = Cat()
d.hi()
c.hi()
print("=======================================")
print("=======================================")
from geopy.geocoders import Nominatim
geolocator = Nominatim(user_agent = "woonie")
# location = geolocator.geocode("175 5th Avenue NYC")
location = geolocator.geocode("Seoul, South Korea")
print(location)
print(location.address)
print(location.raw)
# animal\__init__.py
from .cat import Cat # . <= "이 폴더에 있는" cat.py 이라는 파일에서 Cat 이라는 클래스를 갖고와줘
from .dog import Dog # . <= "이 폴더에 있는" dog.py 이라는 파일에서 Dog 이라는 클래스를 갖고와줘
# animal\cat.py
class Cat:
def hi(self):
print("meow!!") # 고양이가 안녕하는 소리
# animal\dog.py
class Dog:
def hi(self):
print("bark!!") # 개가 안녕하는 소리
# 클래스 - 함수랑 변수들의 합
# 오브젝트(인스턴스) - 클래스를 이용해서 만든 물체
# ex) 클래스 == 빵틀 / 오브젝트 == 빵
class Person:
name = "워니"
def say_hello(self):
print("안녕! 나는" + self.name) # say_hello() 함수의 self라는 인자가 하는 역할
p = Person() # p라는 오브젝트 생성
p.say_hello() # p라는 인자에서 say_hello()라는 함수를 가져옴
print("================")
print("================")
# name이라는 변수를 "워니"로 고정시키지 않고 오브젝트를 만들때 새로 이름 할당
class Person: # initialize(초기화)를 줄여서 init이라고 함
def __init__(self, name): # __init__() 함수는 self를 첫 인자로 받고,
# Person()에서 새로 쓸 변수를 설정할 수 있음
self.name = name
def say_hello(self):
print("안녕! 나는" + self.name) # say_hello() 함수의 self라는 인자가 하는 역할
wonie = Person("워니") # wonie라는 오브젝트 생성
michael = Person("마이클") # michael라는 오브젝트 생성
jenny = Person("제니") # jenny라는 오브젝트 생성
wonie.say_hello() # wonie라는 인자에서 say_hello()라는 함수를 가져옴
michael.say_hello() # michael라는 인자에서 say_hello()라는 함수를 가져옴
jenny.say_hello() # jenny라는 인자에서 say_hello()라는 함수를 가져옴
print("================")
print("================")
class Person: # initialize(초기화)를 줄여서 init이라고 함
def __init__(self, name): # __init__() 함수는 self를 첫 인자로 받고,
# Person()에서 새로 쓸 변수를 설정할 수 있음
self.name = name
def say_hello(self, to_name):
print("안녕! " + to_name + " 나는 " + self.name) # say_hello() 함수의 self라는 인자가 하는 역할
wonie2 = Person("워니") # wonie라는 오브젝트 생성
michael2 = Person("마이클") # michael라는 오브젝트 생성
jenny2 = Person("제니") # jenny라는 오브젝트 생성
wonie2.say_hello("철수") # wonie라는 인자에서 say_hello()라는 함수를 가져옴
michael2.say_hello("영희") # michael라는 인자에서 say_hello()라는 함수를 가져옴
jenny2.say_hello("미지") # jenny라는 인자에서 say_hello()라는 함수를 가져옴
print("================")
print("================")
class Person: # initialize(초기화)를 줄여서 init이라고 함
def __init__(self, name, age): # __init__() 함수는 self를 첫 인자로 받고,
# Person()에서 새로 쓸 변수를 설정할 수 있음
self.name = name
self.age = age
def say_hello(self, to_name):
print("안녕! " + to_name + " 나는 " + self.name) # say_hello() 함수의 self라는 인자가 하는 역할
def introduce(self):
print("내 이름은 " + self.name + " 그리고 나는 " + str(self.age) + " 살이야")
# age 는 숫자 타입을 가진 변수로 문자열 타입으로 캐스팅을 해줘야 함
wonie3 = Person("워니", 20) # wonie라는 오브젝트 생성
wonie3.introduce()
print("================")
print("================")