본문 바로가기
728x90
반응형

Python9

컨테이너 사용법 7 | Docker&Kubernetes 학습 30 도커 컴포즈란 무엇이고, 이게 Dockerfile과 차이점에 대해 알아보자.도커 컴포즈명령어 입력에 익숙해져도 워드프레스처럼 여러 개의 컨테이너로 구성된 시스템을 실행하기는 귀찮다.인자나 옵션도 많고, 볼륨이나 네트워크까지 설정해야 하고, 컨테이너 지우는 등 뒷정리도 번거롭다.이렇듯, 시스템 구축과 관련된 명령어를 하나의 텍스트 파일에 기재해, 명령어 한번에 시스템 전체를 실행하고 종료와 폐기까지 한번에 하도록 도와주는 도구가 바로 도커 컴포즈다.도커 컴포즈의 구조시스템 구축에 필요한 설정을 YAML(YAML Ain't Markup Language) 포맷으로 기재한 정의 파일을 이용해 전체 시스템을 일괄 실행(run) 또는 일괄 종료 및 삭제(down)할 수 있는 도구다.정의 파일에는 컨테이너나 볼륨을 .. 2024. 12. 11.
[Python] 7. 파이썬의 모듈 및 사용자 정의 모듈 모듈(module) : 여러 코드를 묶어, 다른 곳에서 재사용 할 수 있는 '코드 뭉치' - 내장 모듈 : 기본적으로 제공되는 모듈 - 사용자 정의 모듈 : 프로그래머(개발자 등)가 직접 정의/작성한 모듈 # math라는 모듈 사용해보기 import math if __name__ == "__main__": print(math.log(100)) # 밑이 2인 log100 값을 출력해줌 print(math.pi) # π(파이)값을 출력해줌 print(dir(math.pi)) # math 모듈에 포함된 모든 함수를 출력해줌 # 사용자 정의 모듈 작성 및 사용해보기 # setctrl.py 모듈 from functools import * def intersect(*ar): # 교집합을 return하는 함수 ret.. 2021. 10. 26.
[Python] 6. 다중 상속 및 이름 충돌 다중 상속 : 2개 이상의 클래스를 동시에 상속 받는 것을 의미 # 다중 상속 테스트 class Tiger: def Jump(self): print("호랑이 Jump") class Lion: def Bite(self): print("사자 Bite") class Liger(self): def Play(self): print("라이거 Play") if __name__ == "__main__": adultLiger = Liger() # 2개의 클래스로부터 상속받은 메소드 사용 시 오류 발생 X adultLiger.Play() adultLiger.Bite() adultLiger.Jump() # 다중 상속의 경우, 이름 충돌이 발생하는 경우 테스트 class Tiger: def Jump(self): print(".. 2021. 10. 26.
[Python] 5. 상속과 다형성 상속 : 부모 클래스의 모든 멤버(함수 혹은 변수)를 자식 클래스에게 물려줄 수 있는 것 - 자식 클래스는 물려받은 멤버 이외에 추가 기능 구현! 다형성(override) : 상속 받은 메소드의 내용을 재정의하기 - 부모 클래스와 같은 메소드지만 자식 클래스에서 내용을 변경하는 것 class Person: def __init__(self, name, phoneNumber): self.name = name self.phoneNumber = phoneNumber def printInfo(self): print("Name : {0}, Phone Number : {1}".format(self.name, self.phoneNumber) class Student(Person): # Person : 부모 클래스, S.. 2021. 10. 26.
[Python] 4. private 멤버 private 멤버변수 : 클래스 내부의 멤버 변수 중 숨기고 싶은 변수 private 멤버변수의 특징 - 클래스의 내부 변수는 일반적으로 public 속성을 갖기 때문에 외부에서 마음대로 접근하거나 변경 가능 - 하지만, private 멤버 변수는 그렇지 않음 cf. '외부'란 main 함수 혹은 객체를 통한 접근 등을 통틀어 일컫는 말 식별자(예약어) : 키워드는 아니지만, private 멤버 변수로 사용하기 위해, 미리 정해진 용도로만 사용하는 문자 식별자 정의 예시 _* 모듈(파일) 안에서 _로 시작하는 식별자를 정의하면 다른 파일에서 접근 불가 _age __*__ 식별자의 앞뒤에 __가 붙어 있는 식별자는 시스템에서 정의한 이름 __name__ __* 클래스 안에서 외부로 노출되지 않는 식별자로.. 2021. 10. 26.
[Python] 3. 정적 메소드 정적 메소드(= static method) - 클래스에서 직접 호출할 수 있는 메소드 - 즉, 인스턴스(객체)를 생성하지 않고 클래스 이름을 이용하여 호출할 수 있는 메소드 - 메소드를 정의할 때 인스턴스 객체를 참조하는 self라는 인자를 선언하지 않음 아래 코드와 설명을 보며, 좀 더 확실하게 이해해 보자!! class MyOperatorStatic(): @staticmethod def my_addStatic(x, y): return x+y class MyOperator(): def my_add(self, x, y): return x + y if __name__ == '__main__': print(MyOperatorStatic.my_addStatic(1,6)) myOperator = MyOperat.. 2021. 10. 13.
728x90
반응형