Python
Python이란?
고급언어
인터프리터 언어
문법이 쉽고 간결함
오픈소스
다른언어로 만든 프로그램을 파이썬 프로그램에 포함시킬 수 있음
다양한 라이브러리가 많이 존재함
생산성이 높아서 프로그램을 빠르게 개발할 수 있음
변수와 데이터 타입 특징
변수의 Type을 자동으로 설정
데이터 Type 정리
1. 숫자형 ( int, float )
실수의 경우 double 이 없고 무조건 float 로 표현
2. 불리언 ( boolean )
3. 문자열 ( string )
3.1. 큰따옴표(" ")로 감싸기
3.2. 작은따옴표(' ')로 감싸기
큰따옴표, 작은따옴표 가 있는 이유는 문자열에서 따옴표를 정확히 표현하기 위함
C/C++의 경우 1. 큰따옴표( " ) 를 출력하는 법 : \"
파이썬도 위와같은 방법으로 출력 가능하지만
추가로 ' " ' 도 가능 ( 문자열을 작은 따옴표로 묶고 중간에 큰따옴표 )
3.3. 큰따옴표 3개(""" """)로 감싸기
여러 줄을 표현할 때 사용
3.4. 작은따옴표 3개(''' ''')로 감싸기
여러 줄을 표현할 때 사용
4. 리스트 ( list )
C/C++의 배열과 같은 의미
파이썬은 배열을 list 라고 함
4.1. list 특징
1. 리스트에 저장되는 요소가 모두 같은 타입일 필요는 없음
2. 리스트에는 요소들이 순서대로 저장되며, 각 요소는 0부터 시작하는 인덱스(index)를 사용하여 접근할 수 있음
3. 리스트는 그 값을 변경할 수 있음. (mutable type)
4.2. 선언 방법
대괄호 [ ]
예) test = [1, 2, 3, A, 1.9, "테스트" ]
5. 튜블 ( tuple )
프로그램이 실행되는 동안 그 값을 일정하게 유지해야하는 데이터를 튜플로 사용
5.1. 특징
1. 튜플은 그 값을 변경할 수 없음. (immutable type) : 요소 추가, 삭제, 삽입, 추출 불가능
2. 튜플은 리스트와 같은 데이터 타입에 비해 그 실행 속도가 빠름
5.2. 선언 방법
소괄호 ( ) , 감싸지 않고 선언, tuple() 함수로 감싸기
예) test = (1, 2, 3, A, 1.9, "테스트")
test = 1, 2, 3, A, 1.9, "테스트"
6. 세트( set )
6.1. 특징
1. 세트 타입에서는 각 요소들의 순서를 매길 수 없음
2. 중복된 값을 허용하지 않음
6.2. 선언 방법
중괄호 { }, set() 함수로 감싸기
예) test = (1, 2, 3, A, 1.9, "테스트")
7. 딕셔너리 ( dict )
7.1. 특징
1. 딕셔너리의 요소는 Key와 Value 한 쌍으로 구성
2. key, value 는 클론( : ) 으로 연결
3. key 가 문자열인 경우 대입연산자 ( = )로 value 와 연결 가능
4. key 값으로 리스트나 딕셔너리와 같이 변경할 수 있는 타입은 사용 불가능
7.2. 선언 방법
중괄호 { }, dict( ) 함수로 감싸기
예) test = (1, 2, 3, A, 1.9, "테스트")
조건문, 반복문
1. 조건문
[C/C++ 의 경우 ]
if ( 조건문 ) { 내용}
else if
else
[Python 의 경우]
if 조건문 : 내용
elif
else
2. 반복문
[C/C++ 의 경우 ]
while ( 조건식 ) { 내용}
for (초기식; 조건식; 변화식 )
[Python 의 경우]
while 조건문 : 내용
for 변수 in 문자열(또는 tuple, list)
for 변수 in range( )
함수
기본사용법
[C/C++ 의 경우 ]
리턴형 함수명 (매개변수) { 내용 }
int test(int a, int b ) { return 0}
[Python 의 경우 ]
def 함수명 (매개변수)
def test (int a, int b) :
return 0
리턴이 있으면 리턴이 있는거고 없으면 없는 것
return a, b,c 와같이
tuple 형태로 리턴은 여러개 넘길 수 있음
매개변수의 기본값 설정(default parameters)
함수를 선언할 때 미리 매개변수의 기본값을 설정해 놓으면,
함수 호출 시 전달받지 못한 인수에 대해서는 설정해 놓은 기본값으로 자동 초기화 함
예)
def total(a, b=5, c=10):
print(a + b + c)
가변 매개변수(variable parameters)
함수를 실제로 호출할 때 몇 개의 인수가 전달될지 미리 알 수 없다면,
사용자가 직접 매개변수의 개수를 정할 수 있도록 선언할 수 있음
매개변수 명 앞에 ( * ) 기호를 추가해서 선언
딕셔너리를 사용하기 위해선 ( ** ) 와 같이 두개를 추가해야함
예) def 함수명(*매개변수명):
클래스
기본사용법
[C/C++ 의 경우 ]
class 클래스 이름 { 내용 }
자기 자신의 참조 : this
(인스턴스 생성)
1). 클래스이름 객체이름
예) Car test;
2). 클래스이름 *객체이름 선언과 new()
예)
Car *test;
test = new Car();
(초기화 : 생성자)
클래스이름과 동일한 이름의 함수()
(상속)
class 자식클래스명 : public 부모클래스명 {내용}
[Python 의 경우 ]
class 클래스 이름 : 내용
자기 자신을 참조 : self
(인스턴스 생성)
객체이름 = 클래스 이름()
예) test = Car();
(초기화 : 생성자))
파이썬에서는 인스턴스가 생성될 때 자동으로 호출되어 변수를 초기화해주는
초기화 메소드(initialize method) 제공
파이썬에서 초기화 메소드의 이름은 __init__으로 고정
__init__ 메소드는 인스턴스가 생성되는 시점에서 자동으로 호출됨
예) def __init__() :
(상속)
class 자식클래스명(부모클래스명): 내용
'코딩 > Python' 카테고리의 다른 글
VSCode 오류 해결 : The python path in your debug configuration is invalid (0) | 2021.07.10 |
---|---|
python3 version 으로 update 후 yum 에러 해결법 (0) | 2021.06.06 |
파이썬 dictionary를 Json형식으로 저장할 때 Escape Sequence 문제 해결 (1) | 2021.06.06 |