Dev

    정규표현식

    정규표현식 (Regular Expression) 정규 표현식은 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어이다. 정규 표현식은 많은 텍스트 편집기와 프로그래밍 언어에서 문자열의 검색과 치환을 위해 지원하고 있다. 정규표현식 문법 .(dot): 1개의 문자 ?: 선행하는 문자가 0 또는 1 회만 매치한다. "a?b" ===> "ab", "b" *: 선행하는 문자가 0 회 이상 매치한다. "a*b" ===> "b", "ab", "aab", "aaab", ... +: 선행하는 문자가 1 회 이상 매치한다. "a+b" ===> "ab", "aab", "aaab", ... {n}: 선행하는 문자가 정확히 n번 매치한다. "a{5}b" ===> "aaaaab" {n, m}: 선행하는 문자가 ..

    Python 자료형 - 6. 집합 (Set)

    집합 (Set) 집합은 정렬되지 않은 객체의 묶음이다. 흔히 아는 집합과 마찬가지로 중복을 허용하지 않고 순서가 없는 특징을 가진다. 집합은 순서가 없는 자료형이기 때문에 인덱싱도 지원하지 않는다. 1) 집합 선언 집합 자료형은 set키워드를 사용하여 선언할 수 있다. 아래의 예제를 보면 순서를 가지지 않는 것을 확인할 수 있다. ※ 중복을 허용하지 않는 set의 특징때문에 자료형의 중복을 제거하기 위한 필터 역할로 사용된다. >>> s2 = set("Python") >>> s2 {'h', 'o', 'y', 't', 'n', 'P'} 2) 집합 자료형의 활용 (교집합, 합집합, 차집합) 활용을 위해 위와 같이 선언을 하였다. >>> s1 = set([1, 3, 5, 7, 9]) >>> s2 = set([..

    Python 자료형 - 5. 딕셔너리 (Dictionary)

    딕셔너리 (Dictionary) 딕셔너리는 대응관계를 가지는 자료형이다. 전화번호부를 예로 들 수 있는데 누군가의 이름을 찾으면 그 이름에 대응되는 전화번호를 찾을 수 있는 것과 같다. 여기서 이름은 딕셔너리의 key가 되고, 전화번호는 value가 된다. 1) 딕셔너리의 선언 >>> dic = { ... 'name':'kildong', ... 'email':'python@python.com', ... 'phone':'010-0000-0000' ... } >>> dic {'name': 'kildong', 'email': 'python@python.com', 'phone': '010-0000-0000'} 각각의 key에 대응하는 value값을 가진다. 여기서 key인 'name'에 대응하는 value는 '..

    Python 자료형 - 4. 튜플 (Tuple)

    튜플 (Tuple) 튜플은 여러 개의 객체를 모아 담는 데 사용된다. 튜플은 리스트와 비슷하지만 수정이 불가능하다. 1) 튜플 선언 >>> a = ("A", "B", "C", "D") >>> b = ("X", "Y", "Z", a) >>> a ('A', 'B', 'C', 'D') >>> b ('X', 'Y', 'Z', ('A', 'B', 'C', 'D')) 2) 튜플 인덱싱 및 슬라이싱 튜플도 문자열과 마찬가지로 인덱싱과 슬라이싱이 가능하다. >>> ex = ("1", "2", "3", 4) >>> ex[0] '1' >>> ex[2:] ('3', 4)

    Python 자료형 - 3. 리스트 (List)

    리스트 (List) 리스트란 순서대로 정리된 항목을 담는 자료형이다. 1) 리스트 선언 >>> list = ["apple", "banana", "melon", "grape"] >>> list ['apple', 'banana', 'melon', 'grape'] 2) 리스트의 정렬, 삽입, 삭제, 수정 sort()를 이용한 정렬 >>> list.sort() >>> list ['apple', 'banana', 'grape', 'melon'] append()를 이용한 삽입 >>> list.append("mango") >>> list ['apple', 'banana', 'grape', 'melon', 'mango'] del을 이용한 삭제 >>> del list[0] >>> list ['banana', 'grape..

    Python 자료형 - 2. 문자열 (String)

    문자열(String) 문자열은 문자들의 나열 다르게 말하면 문자들의 집합이다. 1) 문자열 표현 방식 작은 따옴표 >>> str = 'Hello world!' >>> str 'Hello world!' 큰 따옴표 >>> str = "Hello world!" >>> str 'Hello world!' 여러 줄의 문자열을 표현하고 싶을 때 (연속된 3개의 따옴표를 이용) >>> str = '''Hello ... world! ... hahaha''' >>> str 'Hello\nworld!\nhahaha' 2) 문자열 연산 문자열 연결 +연산은 두개 또는 그 이상의 문자열을 연결해준다. >>> str1 = "Hello " >>> str2 = "world!" >>> str1 + str2 'Hello world!' ..

    Python 자료형 - 1. 숫자형 (Number)

    숫자형 (Number) 숫자형에는 정수형(Integer)과 실수형(Floating-point) 두가지 종류가 있다. 1) 종류 정수형 정수형(Integer)란 정수를 뜻하는 자료형이다. (양의 정수, 음의 정수, 0) num = 123 num = -123 num = 0 실수형 실수형(Floating-point)란 실수를 뜻하는 자료형이다. (소수점을 포함) num = 4.3 num = -3.1 num = 3.75e10 # 지수를 이용한 표현도 가능하다. 8진수 8진수(Octal)를 사용하기 위해서는 0o 또는 0O를 이용하면 된다. num = 0o222 16진수 16진수(Hexadecimal)를 사용하기 위해서는 0x를 이용하면 된다. num = 0x1A1 2) 숫자를 사용한 연산 사칙연산 파이썬에서는 ..

    콘솔 창 없이 배치파일 실행하는 방법

    run.vbs Set shellObj = CreateObject("Wscript.Shell") Dim command command = "cmd /c file_name.bat" shellObj.Run command, 0, false run.vbs 파일을 생성하고 실행하면 file_name.bat이 콘솔 창 없이 실행된다.

    메소드 체이닝 (Method Chaining)

    OOP에서 여러 메소드를 이어서 호출하는 문법입니다. 메소드가 객체(this)를 반환하여 여러 메소드를 순차적으로 선언할 수 있도록 합니다. 메소드 체이닝을 이용하면 코드가 간결해져 하나의 문장처럼 읽히게 할 수 있다는 장점이 있고 장기적으로는 유지보수에 도움이 됩니다. 예시 아래에 메소드 체이닝을 적용한 가상의 DBConnector 클래스를 구현하였습니다. 클래스 (DBConnector - Javascript) class DBConnector { constructor(host, port, user, passwd) { this.host = host; this.port = port; this.user = user; this.passwd = passwd; } setHost(host) { this.host =..

    리눅스 압축 명령어

    tar tar의 옵션 -c : 파일을 tar로 묶음 -p : 파일 권한 확장 -v : 압축하거나 해제할 때 과정을 출력 -f : 파일 이름을 지정 -C : 경로를 지정 -x : tar 압축 풀기 -z : gzip으로 압축하거나 해제함 tar 압축명령어 tar -cvf {name}.tar {folder or file} # tar tar -zcvf {name}.tar.gz {folder or file} # tar.gz tar -zcvf {name}.tgz {folder or file} # tgz tar 압축해제 tar -xvf {name}.tar # tar tar -xvzf {name}.tar.gz # tar.gz tar -xzvf {name}.tgz # tgz zip zip 압축하기 zip -rF {nam..