컴퓨터 개론 및 실습 - kangwoncs.kangwon.ac.kr/~hhs/2017_1_01/2017_03_15.pdf ·...
TRANSCRIPT
Python
프로그래밍 언어
• 컴퓨터란 사람을 대신해서 계산을 하는 계산기
• 계산, 연산, 나아가 명령을 받아 어떤 복잡한 작업을 수행하는기계 : 컴퓨터
• 프로그램이란 기계(컴퓨터)에게 시킨 명령들의 집합
• 그럼 사람이 컴퓨터에게 어떻게 명령을 내리는가?
기계 사람???
프로그래밍 언어
• 기계가 이해하는 언어 : 기계어• 001001 11101 11101 1111111111111000
• 사람이 사용하는 언어 : 자연어• “Siri님 내일 춘천 날씨좀 알려주세요”
• 사람이 기계어로 일일이 명령어를 짜는것은 어려운 일
• 약속된 문법에 맞추어진 인공적인 언어(프로그래밍 언어)로 명령어를 짜고(Coding)
• 이(Source code)를 번역(Compile)하여
• 기계어(목적프로그램)로 만든후
• 컴퓨터에 명령을 시킴(실행, execute)
프로그래밍 언어
g++, VS…
Python
• 1990년 암스테르담의 귀도 반 로섬(Guido Van Rossum)에 의해만들어진 인터프리터 언어
• 사전적인 뜻은 고대 신화 속의 파르나수스 산의 동굴에
• 살던 큰 뱀으로, 아폴로가 델파이에서 파이썬을 퇴치했다는 …
• 어디에서 많이 사용하는가?• – 구글에서 만들어진 소프트웨어의 50%이상이 파이썬으로 만들어졌
다고 함
• – Dropbox(파일 동기화 서비스), Django(파이썬 웹 프레임워크) 등
Python
• 문법이 쉬워 빠르게 학습할 수 있다– 파이썬을 공부한지 단 하루만에 자신이 원하는 프로그램을 작성할 수 있었다고 함 (프로그래밍 경험이 있었음)
• 간결하다– Perl은 하나의 일을 하기 위한 방법이 100가지– 파이썬은 가장 좋은 방법 1가지를 선호
• 강력하다– 대부분의 모든 일을 할 수 있음
• 시스템 프로그래밍, 하드웨어 제어, 복잡하고 많은 반복연산에는 어울리지 않음
– 파이썬으로 안되면 C, C++로 만들어서 쉽게 파이썬에 포함시킬 수 있음
• 무료이다
• 개발속도가 빠르다– C, C++, Java 등으로 한달 이상 걸릴 것을 1주일 안에 개발 가능– Python을 이용하여 빠르게 Prototype 시스템을 구축 후, 검증 되면 이를 C, C++, Java 등으로 구현 -> 전체 개발 시간을 단축!
Python
• 시스템 유틸리티 – 운영체제의 시스템 명령어 지원
• GUI(Graphic User Interface) 프로그램• – Tkinter, wxPython, PyQT, PyGTK
• 웹 프로그래밍 – 많은 라이브러리 제공
• C/C++과의 결합– C/C++로 만든 프로그램을 파이썬에서 호출, 반대도 가능
• 수치연산 프로그래밍 – Numpy 이용 (C로 작성 됨)
• 데이터베이스 프로그래밍 – 오라클, MySQL 등의 도구 제공
• 파이썬으로 할 수 없는 일– 대단히 빠른 속도를 요구하거나 하드웨어를 직접 건드려야 하는 프로그램
확장자 보이기
• http://infotrue.tistory.com/5
Python
• Python 인터프리터
• (Win7 기준)시작 메뉴의 검색창에 cmd를 입력 -> cmd.exe실행
Python을 입력시 위의 메뉴가 뜨면 설치 성공(Python 인터프리터 환경)
종료는 [Ctrl]+[z]키를 누른후 [Enter]
Python
• 입력
Python
• 작업폴더 생성
• 소스코드(text파일) 생성
• 파일명 변경(이때 확장자는 py)
• 해당 파일 오른쪽 클릭후 Notepad++로 실행
Python
• 기본 작업 환경
저장!
Python
• 현재 작업폴더(소스코드가 존재하는 폴더)에서 [왼쪽Shift]+[마우스 오른쪽 클릭]으로 메뉴를 열어 명령 창을 실행
python 명령어를 친후 띄어쓰기를 넣은후 실행할 소스코드파일 이름을 집어 넣고 [Enter]
종료는 [Ctrl]+[c]
Python 자료형
• 컴퓨터는 계산기
1 + 2 = 3
값연산
결과(저장)
Python 자료형
• 컴퓨터는 계산기
1 + a = ??
값연산
결과(저장)
변수
Python 자료형
• 변수 : 프로그램이 어떠한 작업을 하기위해 데이터를 저장하는공간(엑셀에서의 셀)
• 자료형 : 변수에 저장하는 데이터의 형태(숫자, 문자열 등등)
• 1, 2, 3, …
• 1.0, 2.3, 3.52, …
• “apple”, “한글”, …
• True, False
• Python에서는 기본적으로 Number, String, List, Tuple, Dictionary 등이 제공됨
Python 자료형
변수 이름(python에서는 따로 자료형을 지정하여 선언할 필요 없음)
등호(=)는 대입을 의미왼쪽의 변수에 오른쪽 값을 대입
하겠다는 의미
대입할 값값을 직접 입력할수도 있고변수등을 사용한 식이나 함
수 사용 가능
Python 자료형
• Number
항목 예시
Integer(정수) 123, -345, 0
Real number(실수) 123.45, -1234.5, 3.4e10
Complex number(허수) 1+2j, -3j (python에서 i대신 j로)
Octal digit(number, 8진수) 034, 025
Hexadecimal digit(number, 16진수) 0x2A, 0xFF
Python 자료형
• Number• Integer(정수)
• Real number(실수)
• Octal digit(number, 8진수)
• Hexadecimal digit(number, 16진수)
Python 자료형
• 숫자 연산
Python 자료형
• 문자열
• (‘)나 (“)를 사용하여 구분
• “Hello Word”
• ‘Python’
Python 자료형
• (‘)을 문자열 안에 포함시킬 때
• (“)을 문자열 안에 포함시킬 때
Python 자료형
• \(역슬래시)로 (‘)과 (“)를 문자열 안에 포함시키기
Python 자료형
• 여러줄의 문장을 한번에 처리 할시
• 줄 바꿈 문자인 ‘\n’ 삽입
• 연속된 double quotation 세 개 (“““) 이용
???
• Print 명령어
• 화면에 출력하는 명령어 print 를 이용해서 출력
• 변수명만 쓰면 그냥 내용물 출력임
Python 자료형
• 문자열 합치기(연결)
• 문자열 곱하기(반복)
[수정사항] 상위버전(2.7.6이상?)에서 지원하는기능
실수(real number)