1장.
컴파일러 : 프로그래밍 언어를 기계어로 번역
파이썬 : 1991년 귀도 반로섬이 개발
인터프리터 언어 : 자신이 작성한 명령문의 결과를 즉시 볼 수 있다.
대화형 모드 : 콘솔에서 문장을 한 줄씩 입력하여 실행
스크립트 모드 : 파일을 만들어서 저장한 후에 파이썬 인터프리터가 이 파일을 읽어서 한번에 전부 실행
프로그램 : 컴퓨터가 수행할 명령어를 적어놓은 문서
명령어
문자열 출력 함수 : print()
2장.
파이썬에서의 변수 : 데이터가 객체 형태로 메모리에 저장되고 변수에는 객체를 참조할 수 있는 값이 저장된다. 변수에 저장되는것은 실제 값이 아니고 객체의 참조값(주소)이다.
파이썬에서의 변수의 이름 : 소문자와 대문자는 서로 다르게 취급, 변수의 이름은 영문자, 숫자, 밑줄(_)로 이루어짐, 변수이름 중간에는 공백 X
낙타체 : 변수의 첫글자를 소문자로, 나머지 단어의 첫글자는 대문자로 적는 방법
파이썬 자료형 : 정수(int), 부동소수점수(float), 문자열(str)
불변 객체 : 한번 만들어지면 변경할 수 없는 객체(정수, 실수, 문자열, 튜플...)
가변 객체 : 변경할 수 있는 객체(리스트, 세트, 딕셔너리 ...)
상수 : 변수의 이름을 대문자로하여서 일반적인 변수와 구분
산술연산 : +(더하기) , -(빼기) , *(곱하기) , //(정수 나눗셈) , /(실수 나눗셈) , %(나머지 계산)
할당 연산 : x,y = y,x <= x와 y의 값을 서로 교환한다.
복합 연산자 : += 처럼 대입 연산자와 다른 연산자를 합쳐 놓은 연산자.
지수 계산 : ** 사용
객체 : 프로그래밍에서 관련 있는 변수와 함수를 하나로 묶는것
명령어
변수의 자료형 확인 명령어 : type()
타입 변환 : int(), float(), str()
대문자를 소문자로 변환 : lower()
문자열 변경 함수 : replace(" 뭐를 바꿀건지 "," 뭘로 변경할건지 ")
입력 함수 : input()
길이 세는 함수 : len()
3장.
제어문은 참과 거짓으로 나누어진다.
x if x > y else y
x > y가 참일 경우 x 반환
x > y가 거짓일 경우 y 반환
4장.
횟수 반복(for문) : 정해진 횟수만큼 반복
조건 반복(while 문) : 특정한 조건이 성립되는동안 반복
range() 함수 : range(start=0, stop, step=1)
5장.
함수 : 특정 작업을 수행하는 명령어들의 모음에 이름을 붙인것, def로 선언한다.
인수 : 함수에 전달되는 값
매개변수(인자) : 함수안에서 전달되는 값을 받는 변수
디폴트 인수 : 함수의 매개변수가 기본값으로 가지는것
키워드 인수 : 인수의 이름을 명시적으로 지정해서 값을 매개변수로 전달하는 방법
가변 인수 : 이중별표(**)를 사용하여 나타냄
단일별표연산자(*) : 모든 반복가능한 객체를 언패킹한다.
이중별표연산자(**) : 딕셔너리객체를 언패킹한다.
순환 : 어떤 알고리즘이나 함수가 자기 자신을 호출하여 문제를 해결하는 프로그래밍 기법
global 키워드 : 전역변수를 지역변수에서 사용한다고 지정한다.
6장.
리스트 함축 : [수식 for (변수 in 리스트) if (조건)]
7장.
튜플은 리스트와 다르게 변경이 불가능함
a = (10,) : 벡터변수로 a[0]에 접근이 가능 하지만
a = (10) : 스칼라로 a[0]에 접근하지 못한다.
따라서 벡터변수로 표현하기 위해서는 a = (10,) 콤마를 넣어줘야한다.
tuple() : 튜플을 생성하는 함수
list() : 리스트를 생성하는 함수
enumerate() 함수 : 반복 가능한 개체의 각 항목에 카운터를 추가하고 열거형 개체를 반환
패킹 : 여러개의 객체를 하나의 객체로 합쳐주는것
언패킹 : 여러 매개변수를 포함하는 하나의 객체를 여러개로 풀어주는 것
8장.
캡슐화 : 공용 인터페이스만 제공하고 구현 세부 사항을 감추는 것
일반화(Normalize) : 공통점을 찾아낸다.
일반화 ⇒ summary(정리) ⇒ 개념(class : 집단)
인스턴스 : 클래스로부터 만들어지는 객체, 클래스가 객체로 실체화 되는 과정
클래스 = 개념
객체 = 실체
상속
오버라이딩(재정의)
인터페이스 : 클래스 내에서 Attribute만 정의되어 있음(method가 선언은 되어있는데 정의는 되어있지 않음)
abstract class : 실체가 없는 클래스(추상 클래스)
상속할때 extend사용
인터페이스를 상속할때는 implement사용
python에서 클래스 생성하는 방법
class 클래스명:
def __init__(self, …) :
…
def 메소드1(self, …):
…
init은 필수로 있어야한다.
private으로 정의하려면 변수 이름 앞에 __를 붙인다.
protected는 _를 붙임.
self.변수이름 : 인스턴스 변수 생성
None 참조값 : 변수가 현재 아무것도 가리키고 있지 않다면 None으로 설정
10장.
파일 모드
파일 열때는 open함수 사용
infile = open(”input.txt”, “r”)
infile.close()
파일 모드
r : 읽기
w : 쓰기(파일이 없으면 생성, 기존의 파일이 있으면 기존 내용 지워짐)
a : 추가모드
r+ : 읽기 쓰기 모드
with open(”test.txt”, “w”) as f:
f.write(”adf”)
블록을 빠져나오면 자동으로 파일이 닫쳐진다.
readline은 한줄씩 읽음
이진파읽을 읽을때는
open할때 rb로 열어야한다.
입력 파일에서 8바이트를 읽으려면 다음과 같은 문장 사용
bytesArray = infile.read(8)
try:
예외가 발생할 수 있는 문장
except(오류):
예외를 처리하는 문장
11장.
abs() : 절댓값 반환
all() : 시퀀스(리스트나 딕셔너리 등)를 받아서, 시퀀스의 모든 항목이 참이면 True 반환
any() : 시퀀스 객체에 있는 한개의 항목이라도 참인 경우 참을 반환
eval() : 전달된 수식을 구문 분석하고 프로그램 내에서 수식을 실행
람다식 : 이름은 없고 몸체만 있는 함수, 람다식은 딱 한번 사용하는 함수를 만드는데 사용
lambda x, y: x+y;
콜백 : 어떤행위가 일어났을때 어떻게 작동해라(GUI에서 많이 사용)
map함수 : 리스트에 각각의 원소에 접근할 때 사용
dir() : 객체가 가지고 있는 변수나 함수를 보여준다.
filter() : 특정 조건을 만족하는 요소만을 뽑는다.
zip() : 2개의 자료형을 하나로 묶어주는 함수
연산자 오버로딩 : 연산자를 메소드로 정의하는 것
모듈 : 함수나 변수 또는 클래스 들을 모아 놓은 파일
'개인 공부' 카테고리의 다른 글
정보보호 관리체계 구축(1) (0) | 2023.04.25 |
---|---|
파이썬 네트워크 프로그래밍(1) (0) | 2023.04.25 |