* 클래스

 class 클래스명:

     이 부분에 관련 코드 구현

 

ps. class에는 변수, 함수, 리스트를 넣을 수 있다.

 

- 클래스를 실제로 생성해서 만드는 것을 객체(인스턴스)라고 한다.

  클래스는 설계도에 비유하고 객체는 설계도를 통해 만든 제품에 비유된다.

 

- 인스턴스 생성

  ex) Car 클래스가 있다면 myCar = Car()와 같이 참조변수에 인스턴스를 담아서 생성한다.

 

- 생성자

  생성자는 인스턴스를 생성하면 무조건 호출되는 메서드이다.

  def __init__(self):

     이 부분에 초기화할 코드 입력

 

- 생성자에 매개변수를 넣고자 한다면 아래와 같이 하면 된다.

  def __init__(self, value1, value2):

     이 부분에 초기화할 코드 입력

 

- 인스턴스 변수

  인스턴스가 생성되어야만 사용할 수 있는 변수이다.

  '인스턴스.인스턴스변수명'으로 사용가능하다.

 

- 클래스 변수

  클래스 안에 공간이 할당된 변수를 의미한다.

  클래스 변수를 만드는 방법은 인스턴스 변수와 동일하다. 하지만 크래스 변수에 접근할 때는 '클래스명.클래스변수명' 또는 '인스턴스.클래스변수명' 방식으로 접근해야 한다.

 

- 인스턴스 변수와 클래스 변수가 형식이 동일한데 파이썬은 어떻게 구분하는가?

  인스턴스 변수와 클래스 변수 선언 시점에서는 구분할 수 없다. 

  클래스 안에서 필드(변수)에 접근할 때 self를 붙이면 인스턴스 변수이고, 클래스명을 붙이면 클래스 변수를 생성한다.

 

- 상속

  클래스의 상속은 기존 클래스에 있는 필드와 메서드를 그대로 물려받는 새로운 클래스를 만드는 것이다.

  상속받은 후에는 새로운 클래스에서 추가로 필드나 메서드를 만들어 사용해도 된다.

  - 상위 클래스 = 슈퍼_클래스 or 부모_클래스

  - 하위 클래스 = 서브_클래스 or 자식_클래스

  class 서브_클래스(슈퍼_클래스):

      이 부분에 서브 클래스의 내용 코딩

 

- 메서드 오버라이딩

  메서드 오버라이딩은 상위 클래스의 메서드를 서브 클래스에서 재정의하는 것이다.

 

'Programming > Python' 카테고리의 다른 글

[Python]함수, 모듈  (0) 2023.06.01
[Python]리스트  (0) 2023.06.01
[Python]반복문  (0) 2023.06.01
[Python]조건문  (0) 2023.06.01
[Python]변수, 연산자  (0) 2023.06.01

* 함수

- def 함수명(매개변수):

     수행할 문장

 

def add(a, b):
    print(a + b)

a, b = 1, 2

add(a, b)

* 모듈

- 모듈은 한마디로 함수의 집합이라고 할 수 있다.

위에서 만든 add(a, b) 함수를 다른 프로그램에서도  사용하고 싶다면, 일일이 add(a, b)함수를 선언해 주어도 되지만, add(a, b)함수를 예를 들어 Module.py라는 파일에 만들어 놓고, 함수를 사용하고자 하는 프로그램 파일에서 

import Module을 추가함으로써 add(a, b)함수를 사용할 수 있다.

- Module.py

def add(a, b):
    print(a + b)

- main.py

import Module

a, b = 1, 2

Module.add(a, b)

'Programming > Python' 카테고리의 다른 글

[Python]클래스  (0) 2023.06.02
[Python]리스트  (0) 2023.06.01
[Python]반복문  (0) 2023.06.01
[Python]조건문  (0) 2023.06.01
[Python]변수, 연산자  (0) 2023.06.01

* 리스트

- 리스트명 = [값1, 값2, 값3, ....]

list = [1, 2, 3, 4, 5]

ps. 리스트 값의 인덱스는 0부터 시작한다. ex) print(list[0]) -> 1이 출력

 

- 리스트에 값 추가

  리스트명.append(값)

list.append(6)

- 리스트의 생성과 초기화

  aa = []  -> 빈 리스트 생성

  bb = [10, 20, 30]  -> 정수로만 구성된 리스트

  cc = ['python', 'study']  -> 문자열로만 구성된 리스트

  dd = [10, 20, 'python']  -> 다양한 데이터형이 섞인 리스트

 

ps. 파이썬의 리스트는 다른 프로그래밍 언어의 배열과 달리 다양한 데이터형을 섞을 수 있다.

 

 

 

'Programming > Python' 카테고리의 다른 글

[Python]클래스  (0) 2023.06.02
[Python]함수, 모듈  (0) 2023.06.01
[Python]반복문  (0) 2023.06.01
[Python]조건문  (0) 2023.06.01
[Python]변수, 연산자  (0) 2023.06.01

* for문

for 변수 in range(시작값, 끝값+1, 증가값):

   이 부분을 반복

for i in range(0, 5, 1):
    print("hello world!")

* while문

while 조건문:

   이 부분을 반복

a = 5
while a < 10:
    print("hello world!")
    a = a + 1

* break문

-> 무조건 반복문을 빠져나온다.

while True:
    print("hello world!")
    break

* continue문

-> continue문을 만나면 블로의 남은 부분을 무조건 건너뛰고 반복문의 처음으로 돌아간다.

a = 3
while a < 5:
    print("hello world!")
    a = a + 1
    continue
    print("hiiiiiiiiii")

'Programming > Python' 카테고리의 다른 글

[Python]함수, 모듈  (0) 2023.06.01
[Python]리스트  (0) 2023.06.01
[Python]조건문  (0) 2023.06.01
[Python]변수, 연산자  (0) 2023.06.01
[Python]입출력  (0) 2023.06.01

* if문

if 조건식:                                                              

  실행할 문장

if a < 10:
    print("10보다 작군요.")

* else if문

  if 조건식:

    실행할 문장1

  else:

    실행할 문장2

if a < 10:
    print("10보다 작군요.")
else:
    print("10보다 크군요.")

* if~elif~else문

if 조건식:

  실행할 문장1

elif 조건식:

  실행할 문장2

else:

  실행할 문장3

if a < 10:
    print("10보다 작군요.")
elif a > 10:
    print("10보다 크군요.")
else:
    print("해당사항 없음")

  ps. 파이썬에서는 switch문이 존재하지 않는다.

'Programming > Python' 카테고리의 다른 글

[Python]함수, 모듈  (0) 2023.06.01
[Python]리스트  (0) 2023.06.01
[Python]반복문  (0) 2023.06.01
[Python]변수, 연산자  (0) 2023.06.01
[Python]입출력  (0) 2023.06.01

* 변수의 선언

-> 파이썬에서 변수의 데이터 형식은 값을 넣는 순간마다 변경될 수 있는 유연한 구조이다.

ex) value =10 -> 정수형, value = 10.0 -> 실수형, value = "10" -> 문자열

*산술 연산자

+ 더하기 a + b = 30
- 빼기 a - b = -10
* 곱하기 a * b = 200
/ 나누기 b / a = 2.0
% 나머지 b % a = 0
** 제곱 a ** c = 1000
// a // c = 3

 * 논리 연산자

- and(논리곱) : 그리고

- or(논리합) : 또는

- not(부정) : 부정

'Programming > Python' 카테고리의 다른 글

[Python]함수, 모듈  (0) 2023.06.01
[Python]리스트  (0) 2023.06.01
[Python]반복문  (0) 2023.06.01
[Python]조건문  (0) 2023.06.01
[Python]입출력  (0) 2023.06.01

python의 특징

  • 라이브러리가 풍부하다.
  • 스크립트 언어(인터프리터 언어)로써 실행 속도가 컴파일러 언어보다는 느리다.

 

문자열 입력: input() 함수

  • 사용자의 입력을 받는다. ( print 함수처럼 문자열 출력 가능( ex. input("숫자를 하나 입력하시요: ") )
  • 문자열로 취급한다.
  • 사용자의 입력을 반환한다.
  • 입력은 엔터가 입력될 때 엔터 전까지를 모두 받는다.
  • 자료형을 변환하고 싶을 경우 형변환 함수 사용 ( ex. 정수형으로 형변환 -> int(input("10")) )

출력: print() 함수

print() 함수 사용 방법

print("안녕")
print(123)
print([1, 2.5])
print({"이름": None, "관리자": True})

출력

안녕
123
[1, 2.5]
{'이름': None, '관리자': True}

print() 함수는 문자열을 출력하지만 입력값으로 문자열을 넘기도록 강제하지는 않습니다.

문자열이 아닌 다른 자료형의 데이터가 입력으로 들어오면 print() 함수는 내부적으로 넘어온 데이터를 상대로 str() 함수를 호출한 결과를 출력합니다.

예를 들어, print() 함수에 정수가 인자로 넘어오면,

print(123)

실제로는 print() 함수는 다음과 같이 동작하게 됩니다.

print(str(123))

서식문자 사용

  -정수: %d

  -실수: %f

  -문자열: %s

ex) print("%d" %10), print("%f" %1.5), print("%s" %"Python")

'Programming > Python' 카테고리의 다른 글

[Python]함수, 모듈  (0) 2023.06.01
[Python]리스트  (0) 2023.06.01
[Python]반복문  (0) 2023.06.01
[Python]조건문  (0) 2023.06.01
[Python]변수, 연산자  (0) 2023.06.01

+ Recent posts