전체 글

배우고 성찰한 것을 기록하는 블로그입니다.
했던것들/PY4E(모두를 위한 파이썬)

(파이썬) 함수(Function)의 정의

함수의 수학적 정의는 모든 정의역은 하나의 출력값을 가지며, 출력값을 2개 이상 가질 수 없다.... 라고 아마추어틱하게 설명할 수 있는데 풀어서 설명하자면 함수라는 상자에 무언가를 넣으면 그것에 맞는 하나가 꼭 나와야 함수라고 할 수 있다. 프로그래밍에서, 함수의 간단하고도 더러운(?) 예시 다소 더럽지만 각인이 쉬운 똥으로 예시를 들어보자. 많은 사람들이 매일 화장실에서 큰일을 본다. 대변을 보는 행위는 같지만 먹는 것은 매일 달라진다. ↑ 위의 예시로써 함수의 설명이 끝났다. 매일 매일 똥싸는 행위가 정의(definition)되었고 매일 먹는게 다르니 똥을 싸기 위해 전달해야 하는 정보(인수, 인자, Argument)가 확실해졌다. 이걸 프로그래밍하면 반복적으로 똥싸는 행위를 서술하는게 그다지 복잡..

했던것들/PY4E(모두를 위한 파이썬)

(파이썬) try / except

프로그램은 에러가 나면 터진다. 그리고 파이썬은 가끔씩 민감하다. 특히 타입에 많이 민감하다. 프로그램은 일단 터지면 안된다. 그래서 터질법한 위험한 코드 문장이 실행되고 에러가 났을 때 그 터진 문장은 아예 넘어가고 안전한 코드 문장으로 넘어갈 수 있는 try / except 라는 방법이 있다. try에 묶인 코드는 일단 실행이 된다. 실행이 되면 그대로 넘어간다. 하지만 에러가 나면 except에 있는 코드가 실행이 된다. try = 일단 시도해봐!! except = 근데 터지는 예외적인 상황이면 여기로 와! 라고 대충 해석해보자. try / except str = "123" print(str + 1) 문자열에 정수를 더해보자. 프로그램이 터진다. 이때 try / except 를 써보자! str = ..

했던것들/PY4E(모두를 위한 파이썬)

(파이썬) elif, 다중 분기(Multi-way Decision)

다중 분기(Multi-way desitions) 하나의 조건문 블럭에 다수의 조건들을 추가할 수 있다. 파이썬에서는 elif라는 예약어를 통해서 가능하다. x = 21 if x < 2 : print('Small') elif x < 10 : print('Medium') elif x < 20 : print('Big') elif x < 40 : print('Large') elif x < 100 : print('Huge') else : print('Ginormous') 21 < 40이 참이므로 Large가 출력되고 조건문이 끝나게 된다. 하지만 elif 대신 if를 쓰면 어떻게 될까? x = 21 if x < 2 : print('Small') if x < 10 : print('Medium') if x < 20 ..

했던것들/PY4E(모두를 위한 파이썬)

(파이썬) if, else, 들여쓰기

if문 if문의 기본적인 형태는 아래와 같다. x = 5 if x < 10 : # if는 예약어이며, 컴퓨터는 if 오른쪽의 조건문의 T/F를 판단하게 된다. print('작음') # 만약 T일 경우, 아래로 들여쓰기된 부분이 실행된다. 여기선 '작음'이 출력된다. if문의 주의사항으로 조건문 후에 : (콜론)을 반드시 찍어야한다. 조건문이 실행할 코드는 들여쓰기를 해야한다. (들여쓰기는 아래에서 설명) 비교 연산자(comparison operator) 조건문에서는 참, 또는 거짓을 판별하기 위해 비교 연산자를 사용한다. 들여쓰기 (indentation) 파이썬은 들여쓰기에 매우 엄격하다. 들여쓰기가 제대로 되어있지 않다면 문법 에러를 통해 우리에게 도움을 요청한다. x = 5 if x < 10 : pr..

했던것들/PY4E(모두를 위한 파이썬)

(파이썬) 타입(Type)

타입과 타입의 연산 파이썬에는 여러가지 데이터 타입들이 있다. 문자열(str), 정수(int), 실수(float) 등 파이썬은 똑똑하다. 똑똑해서 동일한 + 연산자를 사용하더라도 정수와 실수에서는 덧셈으로 작용하고 문자열에서는 문자열을 이어주는 기능을 하게 된다. 다만 문자열+숫자 같이 이상한 것을 접붙히면 에러가 난다. ddd = 1 + 4 print(ddd) # 5 출력 eee = 'hello' + 'world' print(eee) # hello world 출력 eee = eee + 1 # 에러 발생(문자열+정수형은 + 연산자가 동작하지 않음) type() 파이썬은 타입에 민감하다. 값이나 변수의 타입을 알고 싶을때는 type() 를 이용해 객체의 타입을 알 수 있다. eee = 'hello' + '..

했던것들/PY4E(모두를 위한 파이썬)

(파이썬) 연산자(Operator)

파이썬에서는 연산을 위한 연산자가 몇가지 존재하고 수학과 같이 순서가 있다. 이를 탐구해보자. 또한 파이썬에는 여러가지 데이터 타입이 존재한다. str(문자열), int(정수), float(실수, 부동 소수점 수) 타입에 대해 공부해보고 그 타입을 변환하는 방법을 알아보자. 연산자(Operator) 컴퓨터 키보드에 있는 수학 기호들은 좀 부족하다. 그래서 우리는 제한적인 몇가지의 수리 연산자들만 사용할 수 있다. 산술연산자(Arithmetic Operators) 연산자 (Operator) 뜻 예제 + add / 더하기 x + y - subtrack / 빼기 x - y * multiply / 곱하기 x * y / division / 나누기 (파이썬에서는 float(실수 영역) 반환) x / y % modu..

했던것들/PY4E(모두를 위한 파이썬)

(파이썬) 상수, 변수, 할당문

응용을 위해서 가장 중요한 것은 기본을 아는 것이다. 기본을 알기 가장 좋은 방법은 단어의 정의를 확실히 아는 것이다. 상수(Constants) 상수는 값이 변하지 않는 값으로 수학 용어 그대로의 상수이다. (방정식 x + 3에서 x는 미지수이고 3은 상수이다.) print('나는 상수') # print 함수 내에 있는 '나는 상수'는 뭔 짓을 해도 바꿀 수 없다. 상수이다. print(123) # 이미 선언된 123. 상수이다. https://ko.wikipedia.org/wiki/%EC%83%81%EC%88%98 상수 - 위키백과, 우리 모두의 백과사전 상수(常數, constant)란 수식에서 변하지 않는 값을 뜻한다. 이것은 변하는 값 변수와 반대이다. 상수란 변하지 않고, 항상 일정한 값을 갖는 ..

했던것들/PY4E(모두를 위한 파이썬)

(파이썬) 예약어, 프로그램 흐름 제어(순차문, 조건문, 반복문)

예약어(reserved word) 파이썬이 예상해놓은 몇가지 단어들을 예약어라고 한다. 만약에 내가 강아지랑 대화를 한다고 가정해보자. 우리 집 꼬미에게 '6월 1일은 지방선거가 있는 날이니 그날 우리들은 국민의 권리를 행사해야해' 라고 하면 못알아들을 것이다. 그러나 '6월 1일은 지방선거가 있는 날이니 산책을 일찍 가자.' 라고 하면 산책이라는 단어는 알아들을 것이다. 이것이 예약어이다. 파이썬은 모든 단어를 기억하고있지는 않지만 군데군데 알고 있어 미리 예약해놓은 단어들이 있다. 이러한 탓에 예약어는 식별자나 변수로 사용이 불가능하다. 아래 링크를 참조하면 예약어를 확인할 수 있다. https://realpython.com/lessons/reserved-keywords/ Reserved Keywor..

했던것들/이산수학

관계의 표현(diagram, graph, matrix)

집합 사이의 관계를 표현하는 방법은 몇 가지가 있다. 집합 A = {1, 2, 3}에서 원소 a, b가 a > b인 관계 R 과 같이 표현하는 서술식 방법도 있고 그 서술식에 따라 관계를 순서쌍들의 집합으로 {(1, b) ... ~ } 나열하는 나열식 방법도 있다. 그 외에도 순서쌍의 원소들 간의 관계를 편리하게 표현하기 위한 방법으로 화살표 도표(arrow diagram), 좌표 도표(coordinate diagram), 방향 그래프(directed graph), 관계 행렬(relation matrix) 등이 있다. 화살표 도표(arrow diagram) 관계 a가 집합 A의 원소이고 b가 집합 B의 원소라고 하면 (a, b) ∈ R 일 경우 집합 A에 있는 원소 a에서 집합 B에 있는 원소 b로 화살..

했던것들/이산수학

관계 (Relation)

인간은 일생 동안 수많은 관계를 맺으며 살아간다. 부모와 자녀, 애인, 학생과 선생님 등등 관계란 객체들 간의 연관성을 표현하는 구조로써 수학이나 공학 뿐만 아니라 여러 다른 분야에서도 기본적이고 중요한 개념이다. 집합 A와 집합 B가 있을 때 A가 B의 부분 집합이거나, A가 B의 부분 집합이 아니거나, 또한 A가 B의 여집합일 경우 집합 A와 집합 B는 관계가 있다고 한다. 공학과 수학에서의 관계는 곱집합의 임의의 부분 집합이므로 관계의 집합에 대한 연산, 즉 교집합, 합집합, 차집합, 여집합 등도 관계가 된다. 관계와 이항관계 두 집합 A, B에 대하여 A로부터 B로의 이항 관계(binary relation) R은 두 집합의 곱집합 A x B의 부분 집합이다. A x B의 원소인 순서쌍 (a, b)..

2DC
2DC