Dev

[DevOps] 1. DevOps 파이썬 핵심 - 1) 설치, 제어문, 객체

mlslly 2024. 4. 25. 15:38

Python 설치 및 실행

- 파이썬 버전 확인 

$ python3 --version

 

- 파이썬 실행 및 종료

$ python3

>>> exit()

 

- 파이썬 스크립트 실행 : 확장자 .py 파일

$ python3 Hello.py

 

- pip 업그레이드 

$ pip3 install --upgrade pip

 

- Ipython 설치 

$ pip3 install ipython

 

mac os에서 ipython 설치하는 방법 참고 : https://www.geeksforgeeks.org/how-to-install-ipython-on-macos/

 

How to Install iPython on MacOS? - GeeksforGeeks

A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.

www.geeksforgeeks.org

 

 

- ipython 실행 및 종료 

$ ipython 

in[1] : exit()

 

- jupyter notebook 설치 

$ pip3 install jupyter

mac os에서 jupyter notebook 설치하는 법 참고 : https://www.geeksforgeeks.org/how-to-install-jupyter-notebook-on-macos/

 

How to Install Jupyter Notebook on MacOS? - GeeksforGeeks

A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.

www.geeksforgeeks.org

- jupyter notebook 웹 실행 

$ jupyter notebook

주피터 노트북이 웹상에서 실행되는 것을 확인 가능 

종료 하려면 ctrl + c를 눌러주면 됨 

 

 


실행 제어 

- If/elif/else

if, elif, else 사용을 활용해서 특정 조건에서만 실행하기

>>> cat= 'spot'
>>> if 's' in cat:
>>>     print('found an \'s\' in a cat')
>>>     if cat == 'Sheba':
>>>          print('I found Sheba')
>>>     else :
>>>    	print('Some other cat')
>>> else:
>>>     print('a cat without \'s\'')
    

found an 's' in a cat
Some other cat

 

- for 반복문 

시퀀스의 구문을 반복하는 기능 

>>> for i in range(10) : 
...     x = i*2
...     print(x)

0
2
4
6
8
10
12
14
16
18

 

- continue 

반복문 안에서 continue 사용시 해당 값의 처리에 대해 건너뛰고 다음 반복 문으로 넘어감 

>>> for i in range(6) : 
...     if i==3 or i == 4 :
...             continue
...     print(i)

0
1
2
5

while 반복문

- while : 조건이 True로 판단되는 동안 블록을 반복함 

>>> count = 0
>>> while count < 3 : 
...     print(f'the count is {count}')
...     count += 1

the count is 0
the count is 1
the count is 2

 

- break : 반복문을 빠져나오도록 break 

>>> count = 0
>>> while True : 
...     print(f'the count is {count}')
...     if count > 5 : 
...             break
...     count += 1

the count is 0
the count is 1
the count is 2
the count is 3
the count is 4
the count is 5
the count is 6

 

예외 처리 

- try-except 구문으로 오류를 건너뛰고 진행, 오류를 확인 

>>> thinkers = ['Plato', 'Playdo','Gumby']
>>> while True : 
...     try : 
...             thinker = thinkers.pop()
...             print(thinker)
...     except IndexError as e : 
...             print('we tried to pop too many thinkers')
...             print(e)
...             break


Gumby
Playdo
Plato
we tried to pop too many thinkers
pop from empty list

 


내장 객체 

파이썬에는 상당수의 내장 built-in 클래스들이 있음 

 

- 클래스 인스턴스화 (class instantiation) : 클래스로부터 객체를 생성하기 

- 도트 표기법 (dot syntax) : 객체의 속성과 메서드에 접근하기 위한 클래스 문법 

>>> class FancyCar() : 
...     pass
>>> type(FancyCar)

<class 'type'>


>>> # fancy car를 인스턴스 화 하기

>>> my_car = FancyCar()
>>> type(my_car)

<class '__main__.FancyCar'>

 

[객체 메서드와 속성]

 

- 객체 (object) : 데이터를 속성에 저장한 것. 클래스의 인스턴스로, 데이터와 해당 데이터를 처리하는 메서드를 포함하는 개체.

- 클래스 (class) : 물건을 만들 때, 그 물건의 설계도와 같은 것. 클래스로부터 만들어진 실제 물건이 객체. 예를 들어, 자동차 클래스에서 자동차 하나를 만들면 그것이 객체이며, 이 객체는 색깔, 모델 등과 같은 속성을 가짐.

- 메서드 (method) : 객체와 클래스에 포함된 함수

- 객체 메서드 (object method) : 클래스에 포함된 모든 객체에 대해서 정의된 메서드   

   ex. 자동차 클래스에서 '운전하기'  기능

- 클래스 메서드 (class method)  : 클래스에 포함되어 해당 클래스의 모든 객체가 공유하는 메서드. 클래스 메서드는 클래스 수준의 속성에 접근하고 수정할 수 있지만, 객체 속성에는 직접 접근할 수 없고, 클래스 전체에 영향을 미치는 작업에 사용됨

    ex. 자동차 클래스에서 '총 자동차 수 확인하기' 기능

>>> # 멋진 차의 클래스 정의
>>> class FancyCar() : 
...     # 클래스 변수 추가
...     wheels = 4
...     # 메서드 추가
...     def driveFast(self) : 
...             print('driving so fast')


>>> # 멋진 차를 인스턴스화 
>>> my_car = FancyCar()
>>> # 클래스 속성에 접근 
>>> my_car.wheels

4


>>> # 메서드 호출
>>> my_car.driveFast()

driving so fast

 

 

 

* Python for DevOps (O'Reilly) 책을 참고하여 작성함