목록Python (14)
Information Security
외장 함수 -내부 기능을 확장하여 추가 기능을 사용할 수 있도록 도와주는 역할을 한다. -다양한 모듈을 지원하며 사용자가 작성한 모듈도 사용할 수 있다. -import가 필요한 모듈이다. sys (System specific parameters and functions) -파이썬 인터프리터가 제공하는 변수들과 함수들을 제어할 수 있게 해주는 모듈이다. sys.argv: 명령행에서 인자를 전달 -python 소스 수행 시, 명령형 타입의 인자를 받을 수 있도록 지원한다. 1. 위와 같이 입력한 파이썬 프로그램을 C:/python 디렉터리에 저장한다. 2. 도스 창을 열고, 파이썬 프로그램이 위치한 폴더로 이동한다. 3. sysargv_test.py 뒤에 넣어준 인자들은 리스트 sys.argv에 저장된다. ..
내장 함수 (Built in Function) -Python이 기본적으로 가지고 있는 함수 -외부 소스의 import 없이 사용할 수 있다. -아무런 설정 없이 바로 사용할 수 있다. abs(): 어떤 숫자를 입력받았을 때, 그 숫자의 절댓값을 리턴한다. max(), min(): 다수의 인수를 받아서 그 안에서 최댓값, 최솟값을 리턴한다. -문자열은 아스키코드 값으로 비교한다. pow(x, y): x의 y 제곱한 결과를 리턴한다. 내장 함수 pow(x,y) 예제(피타고라스의 정리) -sqrt()는 math 라이브러리에서 제공하는 제곱근을 리턴하는 함수이다. math 라이브러리를 import 하여 사용할 수 있다. ※ 파이썬 홈페이지(python.org)에서 [Documentation] - [Library..
예외 처리 (Exception handling) -프로그램을 작성하다 보면 작성자가 의도하지 않은 동작이나 예상치 못한 오류가 수없이 발생한다. 오류가 발생하면 사용자 프로그램의 실행이 중지되거나 데이터 처리에 문제가 발생하게 된다. 이런 문제를 예방하기 위해 try, except을 이용하여 오류가 발생했을 때 어떤 방법으로 처리할 것인지 설정할 수 있다. 오류가 자주 발생하는 상황들 ValueError -이렇게 숫자를 입력해달라고 안내 메시지에 적어놓았지만 꼭 문자를 입력하는 사람이 있다. 이런 경우 당연히 에러가 발생한다. ZeroDivisionError -어떤 숫자를 0으로 나누려 하면 에러가 발생한다. IndexError -리스트 a는 인덱스 범위가 0~2까지로 정의되어 있어서 a[4]는 접근할 ..
File -컴퓨터 등의 정보 기기에서 정보를 담아 놓은 논리적인 단위이다. -파일은 저장되는 정보에 따라서 크게 텍스트, 바이너리 파일로 분류한다. -텍스트 파일은 아스키코드나 유니코드로 저장하여 우리가 쉽게 읽을 수 있는 파일이다. -바이너리 파일은 2진 데이터로 저장되어 있다. 우리가 읽기 어렵다. -파일은 저장하는 정보나 성격에 따라서 여러 가지 특징을 가진다. ex) jpg, png, exe, com, dll... -운영체제에서는 저장 매체에서 파일을 관리하기 위한 파일 시스템을 가지고 있다. ex) FAT, FAT32, NTFS, EXT2, EXT3... 파이썬에서의 파일 처리 -파일 처리를 하기 위해서는 open/close 과정이 필요하다. File Open: 파일을 연다. 파일 내부에 접근하..
Module -함수나 변수 또는 클래스들을 모아 놓은 파일이다. -다른 사람이 작성해 놓은 모듈이나 파이썬이 기본적으로 제공해주는 라이브러리를 가져와서 사용할 수 있다. (우리가 직접 만들어서 사용할 수도 있다.) Module 구성 -모듈은 python 파일 단위로 구성된다. -파일의 이름이 모듈의 이름이 된다. -파일에 포함된 python 함수와 변수가 모듈의 요소가 된다. Module 만들기 -idle에서 [New File]을 누르고 모듈을 작성한다. -파일의 이름은 파일이름.py로 저장한다. -모듈 mod_test 을 만들었다. Module 사용하기 -Module 사용법: import 모듈_파일_이름 -Module 안의 요소(변수, 함수, 클래스) 사용법: 모듈_이름.요소_이름 -모듈 mod_tes..
객체 지향 프로그래밍 (objective-oriented programming) -실 세계의 사물을 객체(Object)로 추상화하여 객체 간의 상호 작용을 기반으로 프로그래밍 하는 방법이다. 객체(Object) 1. 객체는 명사로 정의되는 자신의 특성(변수)과 동사로 정의되는 자신의 기능(메서드)을 가지고 있다. 2. 객체는 상속을 통해 기능을 확장할 수 있다. 위 세대의 기능을 물려받고 나만의 기능을 추가할 수 있다. 3. 외부에서 의도하지 않은 내부 데이터 변경을 막기 위하여 캡슐화를 할 수 있다. 4. 객체의 기능은 재 정의(Override) 할 수 있다. 클래스(Class): 똑같은 무엇인가를 계속해서 만들어 낼 수 있는 '틀' 클래스의 선언 class 클래스명: 클래스의 인스턴스(instance..
입/출력 -프로그램과 사용자가 대화할 수 있는 기회이다. -내가 원하는 값을 프로그램에 넣을 수 있다. -사용자는 키보드로 입력하고, 프로그램은 화면으로 출력해준다. input(): 사용자의 입력 -input()을 사용하면 프로그램은 사용자가 어떤 값을 입력해주기를 기다린다. -그러면 우리는 프로그램에 원하는 대답을 해주면 된다. -이렇게 입력할 때 메세지가 출력되도록 할 수도 있다. 다른 사람이 사용할 경우 어떤 값을 입력해야 할지 안내해줄 때 사용한다. 자료형 확인하기 -안내 메시지에 따라 숫자를 입력하였는데 갑자기 입력한 값의 자료형이 궁금해졌다. -그래서 값을 저장한 변수에 곱하기(*) 연산을 해보았는데, 내가 입력한 값이 반복되어 출력되었다. 문자형으로 저장된 것이다. type(a)로 확인해보니..
함수(Function) -반복적으로 수행되는 작업을 따로 한 번 만들어 두고 필요할 때마다 사용한다. -함수를 사용하면 코드가 중복되지 않고 간단해진다. -함수를 기능별로 작성하여 프로그램의 모듈화가 증대된다. 함수의 형식 def 함수명(입력 인수): return -입력 인수: 함수에 제공되는 입력 값으로, 여러 개를 넣을 수 있다. -들여쓰기 한 부분까지 하나의 구조가 된다. 들여쓰기를 벗어나면 함수가 종료된다. -return:결과 값을 반환하기 위한 절차이다. 함수를 호출한 곳으로 값을 돌려준다. 리턴 값은 하나밖에 지정할 수 없다. 함수 예제 입력값도 리턴 값도 없는 경우 -함수는 호출을 해야만 수행된다. -함수의 정의가 맨 위에 되어있지만, 호출을 하지 않았기 때문에 "Run!!"이 먼저 출력된다..
반복문 동일한 명령을 반복적으로 처리해야 할 경우 사용하는 구문 while 문 -조건문이 참인 동안 반복할 문장을 수행한다. 조건문이 거짓이 되면 while 문을 빠져나온다. while : while 문을 이용하여 숫자 세기 while 문의 리스트 테스트 -인덱스는 0부터 시작하기 때문에 len(a)의 결과에서 1을 빼주어야 마지막 요소에 접근할 수 있다. 조건문에 의해서 count는 4(len(member)-1)까지 증가하며 리스트 내의 모든 요소들을 출력한다. while 문의 딕셔너리 테스트 -딕셔너리에는 인덱스가 없으므로 Key를 리스트로 만들어 Value에 접근한다. break 반복문 수행 중에 강제로 빠져나가야 할 경우에 사용한다. -원하는 요소를 찾을 때 많이 사용한다. -IF 조건문에서 "F..
IF 조건문 if 조건문 : 수행 문장1 ← 수행 문장2 ←조건이 참일 때 수행 else : 수행 문장1 ← 수행 문장2 ←조건이 거짓일 때 수행 -파이썬에는 C나 JAVA처럼 구분해주는 역할을 하는 괄호가 없기 때문에 들여 쓰기를 사용하여 구분해야 한다. -들여 쓰기가 존재하는 부분까지가 조건에 맞을 때 수행하는 범위이다. 들여쓰기(indentation) -Python에서는 들여 쓰기가 자동으로 되지 않는다. 들여 쓰기를 하지 않으면 위와 같이 에러가 발생하므로 주의해야 한다. -IDLE에서는 자동으로 들여 쓰기가 된다. ★★주의 -else에 속한 문장이 두 줄이다. -마지막 문장에 들여 쓰기를 하지 않아 else에 속한 문장이 두 줄에서 한 줄로 바뀌었다. -들여 쓰기에 따라서 실행 결과가 달라지므로..