파이썬 기초

0woy·2022년 9월 8일
0

로봇프로그래밍

목록 보기
1/2
post-thumbnail
post-custom-banner

파이썬 기초 문법

📕 들여쓰기

파이썬은 별도의 기호( ex.중괄호 )를 사용하지 않습니다.
공백문자를 이용하여 코드 블록 을 지정해 줘요.

  • 콜론(:)은 코드 블록의 시작 의미
  • 코드 블록 내부의 코드들은 반드시 들여쓰기
    구분 되어야 함.
  • 세미콜론(;)은 한 줄에서 문장을 구분하기 위해 사용, but 추천되지 않음.

🥚입력

#들여쓰기
for x in array:
	if x < pivot:
    	ret = value - 1
    else:
    	ret = value + 1
        
#세미콜론
a = 1; b = 2; c = 3;

📙 객체(Object)

객체는 함수와 변수를 함께 묶는 방법의 일종이에요.

객체 지향 프로그래밍
객체의 속성과 행위에 대해 관계를 가지고
프로그래밍 하는 것

객체지향 프로그래밍의 장점
우리가 프로그래밍 하고자 하는 대상들을 관계에 의해서 정의할 수 있어요.
즉, 비교적 쉽게 정의가 된답니다.
그리고 객체 단위에 대한 특징들로 관리되기 때문에 유지 보수에 용이하다는 장점이 있습니다.

📖 파이썬과 객체모델

파이썬에선 저장되는 data(value)와 data를 가리키는 변수reference 관계로 연결이 되어있어요.

🥚입력
a = 10

🐣의미

10이라는 data는 메모리 어딘가에 저장 되어있고,
data가 저장된 메모리 상의 주소 를 a에 할당한다는 의미예요.
즉, a는 10이라는 value가 아닌 10이 저장된 위치 를 갖고 있어요!

'''
이렇게 변수를 선언한다면 저장된 data들의 주소는 동일한
format을 가지고 있기때문에 우리가 변수를 선언할 때
data type을 명시할 필요가 없다는 장점이 있답니다.
'''

📒 변수(Variable)

대입 연산자(=)를 사용하여 연산자 오른쪽 객체를 변수에 연결

변수에 객체를 할당하는 것
= 객체에 참조(reference)를 생성하는 것!

  • 바인딩(Binding): 객체를 변수의 이름에 연결

🥚입력

#변수
a=[1,2,3]
b =a 
a =[4,5,6]
print(a)
print(b)

🍳출력

[4, 5, 6]
[1, 2, 3]

📖 동적참조 (Dynamic reference)

데이터 타입(자료형)은 객체 참조에서 중요한 문제가 아니에요.
객체의 주소변수에 저장되기 때문에 다양한 자료형을 사용할 수 있고, 데이터가 사용되는 시점에서 묵시적으로 형변환이 수행됩니다.

🥚입력

#동적참조
num = 5;
print(type(num))
ch ='foo'
print(type(ch))

🍳출력

<class 'int'>
<class 'str'>

📖 자료형 확인

isinstance() 함수를 사용하여 객체의 자료형을 확인할 수 있어요.
isinstance(객체, 자료형) 형식으로 사용하는데,
True 또는 False를 반환합니다.

🥚입력

#자료형 확인
a=5
print(type(num))
print(isinstance(a,int))

🍳출력

<class 'int'>
True

📗 속성(Attribute) & 메소드(Method)

  • 속성: 객체 내부에 저장된 데이터 객체
  • 메소드: 속성에 접근하기 위한 함수

📖 객체의 속성과 메소드에 접근하는 방법

1) 연산자( . )
C++나 JAVA처럼 (객체.속성/메소드)로 접근할 수 있어요.

Ex) object.atribute_name / object.method_name

2) getattr()
getattr() 함수를 사용하여 접근하는 방법도 있습니다.

Ex) getattr(a, 'split')

📖 모듈 임포트 (Module Import)

  • 모듈 (module)
    변수, 함수, 클래스를 담은 하나의 파이썬 파일 (.py 파일)

  • 패키지 (package)
    모듈들이 여러 개 모여있는 것

  • 파이썬 표준 라이브러리(PSL)
    파이썬에 기본으로 설치된 모듈과 패키지.
    내장 함수를 묶어서 '파이썬 표준 라이브러리' 라고 합니다.

🌒모듈 전체 가져오기
모듈은 import 키워드로 가져올 수 있어요.
모듈을 여러개 가져올 때는 모듈을 콤마(,)로 구분합니다.

#모듈임포트(헤더파일 개념)

import my_module
result = my_module.func() #func
num = my_module.CON      #data

🌓_모듈 내에서 필요한 부분만 가져오
from 모듈 import 로 원하는 부분만 가져올 수 있어요.
가져온 부분을 사용할 때는 모듈 이름을 붙이지 않고 바로 사용합니다.

#from import
from my_module import func, CON
func()

#my_module의 모든 변수, 함수, 클래스 가져오기
from my_module import *
CON
func()
fucn2()

🌔 모듈 이름 지정하기
모듈 함수 사용할 때 my_module.func() 처럼 일일이 모듈 이름 적기 싫은 사람 여기여기 붙어라! 👍

#import as
import my_module as mm
from my_module import Con as c, func as f

retult = mm.func()
num = c

import my_module as mm 처럼 모듈을 가져오면서 as 뒤에 이름을 지정해 주면 my_module을 사용할 때 mm으로 줄여서 사용할 수 있어서 편리해요.


🌕모듈 해제하기, 다시 가져오기
import로 가져온 모듈은 del로 해제할 수 있어요.

#del
import my_module
del my_module

모듈을 다시 가져오려면 importlib.reload를 사용합니다.

#importlib.reload()
import importlib
import my_module

importlib.reload(my_module)

📘 연산자 (Operators)

파이썬의 연산자를 정리한 표입니다.

연산자설명연산자설명
a + b더하기a ^ bXOR
a - b빼기a == ba와 b가 같으면 TRUE
a * b곱하기a != ba와 b가 다르면 TRUE
a / b나누기a < b, a <= ba<b이면 TRUE, a<=b이면 TRUE
a // ba를 b로 나눈 몫a > b, a >= ba > b이면 TRUE, a >= b이면 TRUE
a ** ba의 b승a is ba와 b가 동일한 주소에 할당된 객체면 TRUE
a & bANDa is not ba와 b가 동일한 주소에 할당되지 않은 객체면 TRUE
abOR

📚 정리

이번 시간에는 파이썬의 기초 문법인 들여쓰기, 변수, 객체, 속성 & 메소드 그리고 연산자에 대해 알아봤어요.
분량을 어디까지 끊어야 할지 몰라서 조금 길어졌는데, 다음 글부터는 짧고 굵게 정리해 보겠습니다.
(학교에서 배운 내용을 정리하는 건데 길어지면 읽기 싫기 때문에..)

추석 잘 보내세요!🎑 다음에 만나요!🙌

post-custom-banner

0개의 댓글