Programming 기초
-
[Python 기초 #7] 클래스, 객체와 인스턴스 차이, 생성자, 상속, 오버라이딩Programming 기초/Python 2023. 4. 21. 18:27
* 클래스(class) 클래스는 거푸집과 같다. 같은 기능을 하는 함수를 필요할 때마다 찍어내는 '함수 틀'이다. 클래스로 생성된 함수들을 객체(object)라고 부른다. c언어에는 클래스가 없다. c언어에서는 같은 기능을 하는 함수라도 매번 이름을 약간씩 바꿔가면서 새롭게 정의해야한다. 클래스 이름을 지을 때, 관례적으로 첫 글자를 대문자를 사용한다. 클래스 안에 구현된 함수는 메서드(Method)라고 부른다. 파이썬 메서드의 첫 번째 매개변수 이름은 관례적으로 self를 사용한다. 객체를 호출할 때 호출한 객체 자신이 전달되기 때문에 self를 사용한 것이다. 객체와 인스턴스(instance)의 차이 클래스로 만든 객체를 인스턴스라고도 한다. a =Cookie() 이렇게 만든 a는 객체이다. 그리고 ..
-
[Python 기초 #6] 함수, 사용자 입력과 출력, 파일 읽고 쓰기Programming 기초/Python 2023. 4. 19. 16:50
* 파이썬 함수의 구조 def 함수 이름(매개변수) 수행할 문장1 수행할 문장 2 ... def는 함수를 만들 때 사용하는 예약어(keyword) 매개변수(parameter) : 함수에 입력으로 전달된 값을 받는 변수. 인수(arguments) : 함수를 호출 할 때 전달하는 입력값. 매개변수와 인수는 혼용해서 사용됨. * 입력값과 결괏값에 따른 함수의 형태 일반적인 함수 결괏값을 받을 변수 = 함수 이름(입력 인수1, 입력 인수2, ...) 예) def add(a, b): result = a + B result result # a+b의 결괏값 반환 입력값이 없는 함수 결괏값을 받을 변수 = 함수 이름() 예) def say(): return 'Hi' 결과값이 없는 함수 함수 이름(매개변수1, 매개변수2..
-
C언어 기초#11 이중포인터, 함수포인터, 배열포인터, void포인터Programming 기초/C Language 2023. 4. 18. 21:57
* 이중 포인터(double pointer) = 포인터의 포인터(pointer to pointer) **q는 *q가 가리키는 위치의 내용이다. *q는 q가 가리키는 위치의 내용이다. #include int main(void) { int i = 100;//정수 변수 선언 int* p = &i;// 포인터 p는 i를 가리킨다. int** q = &p;// 이중포인터 q는 p를 가리킨다. *p = 200;// p를 통하여 i에 200 저장 printf("i=%d\n", i); **q = 300;// q를 통하여 i에 300 저장 printf("i=%d\n", i); return 0; } ------------------------------------------------- i=200 i=300 이중 포인터가..
-
[Python 기초 #5] 제어문 if, while, forProgramming 기초/Python 2023. 4. 18. 17:56
* if 문 if 조건문 형식으로, 조건문이 참일 때 아래 문장을 실행한다. 여기서 if 문에 속하는 모든 문장은 같은 너비로 들여쓰기(identation)를 해주어야 한다. 조건문 뒤에는 반드시 콜론(:)이 붙는다.(문법) money = 2000 card = True if money >= 3000 and card: print("택시를 타고 가라") else: print("걸어 가라") -------------------------------- 걸어 가라 * x in s, x not in s in not in x in 리스트 x not in 리스트 x in 튜플 x not in 튜플 x in 문자열 x not in 문자열 * pass : 조건문에서 아무 일도 하지 않게 설정하고 싶을 때 poket = [..
-
C언어 기초#10 구조체와 포인터, 공용체(union), 열거형(enum), typedefProgramming 기초/C Language 2023. 4. 15. 20:28
*구조체(structure)C에서의 자료형은 기본 자료형과 파생 자료형으로 분류할 수 있다. 기본 자료형은 char, int, double 등이 있다. 파생 자료형은 이들 기본 자료형에서 파생된 것으로 배열, 열거형, 구조체, 공용체 등을 들 수 있다. 구조체는 파생 자료형 중에서도 가장 일반적인 구조를 가진다. c언어 공식문서에서는 기본 자료형이라는 공식적인 카테고리가 없다. c언어의 type 체계는 function type과 object type이 있다. (여기서 object type은 object와 다르다.) object type은 아래와 같이 네 가지가 있다(네가지는 서로 배타적인 관계가 아니다.) 1. scalar type(int, char ...)과 pointer type 2. 구조체, 배열 ..
-
[Python 기초 #4] 집합(set), 불(bool), 변수(variable)Programming 기초/Python 2023. 4. 15. 11:07
* set(집합) 자료형 - 요소에 순서가 없다. - 중복을 허용하지 않는다. - 딕셔너리와 비슷하게 인덱싱으로 접근하려면 리스트나 튜플로 변환해야 한다. list(), tuple() s1 = set([1, 2, 3]) # set함수 안에 배열을 넣는다. s2 = {5, 2, 1, 2} s3 = {'Hello'} # 이건 'Hello'를 하나의 요소로 인식한다. s4 = set("hello")# hello를 구성하는 문자 하나하나를 요소로 인식한다. print(type(s3)) print(s1) print(s2) print(s3) print(s4) ------------------------ {1, 2, 3} {1, 2, 5} {'Hello'} {'o', 'h', 'l', 'e'} 리스트 내의 중복된 요..
-
[Python 기초 #3] 튜플(tuple), 딕셔너리(dictionary)Programming 기초/Python 2023. 4. 14. 23:26
* Tuple(튜플) - 리스트는 []으로 둘러싸지만 튜플은 ()으로 둘러싼다. - 리스트는 그 값의 생성, 삭제, 수정이 가능하지만 튜플은 그 값을 바꿀 수 없다. - 괄호 생략 가능. - 1개의 요소만을 가질 때는 요소 뒤에 콤마를 반드시 붙여야함. 그 외 나머지는 리스트와 동일히다. t1 = () t2 = (1,) t3 = (1, 2, 3) t4 = 1, 2, 3 t5 = ('a', 'b', ('ab', 'cd') * Dictionary(딕셔너리) - Key와 Value를 한 쌍으로 갖는 자료형. - 연관 배열(Associative array) 또는 해시(Hash)라고 불림 - value값으로 리스트를 쓸 수 있으나 key 값으로 리스트를 쓸 수 없다. dic = {'name' : 'Eric', '..
-
[Python 기초 #2] 리스트 자료형Programming 기초/Python 2023. 4. 14. 17:20
list(리스트) a = [] # 빈 값 b = [1, 2, 3] # 숫자 c = ['Life', 'is', 'too', 'short'] #문자 d = [1, 2, 'Life', 'is'] #숫자 + 문자 e = [1, 2, ['Life', 'is']] # 리스트 안에 리스트 print(e[2][0]) ---------------------------------------- Life 리스트 연산하기 a = [1, 2, 3] b = [4, 5, 6] print(a+b) print(a*3) 리스트 값 수정하기 a = [1, 2, 3] a[2] = 4 print(a) b = ["서울", "인천", "부산"] b[0:2] = ["경기도", "충청도"] print(b) ------------------------..