Python/Python 모듈탐구

    [Python] - 모듈탐구 re - [^정규표현식$?]

    정규표현식을 모르고 있는 사람은 아래 포스팅을 읽고 오자 2021.04.17 - [정보보안-이론] - 정규표현식에 대하여 정규표현식에 대하여 정규표현식은 여러 목적으로 사용된다. 정규표현식 자체는 어렵지 않다. 정규식(正規式)은 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어이다. < 정규표현식의 정의 : 출 tutoreducto.tistory.com 필자도 정규표현식을 많이 안 써봤지만. Python도 정규표현식을 당연히 지원한다. re(Regular Expression)이라는 모듈을 알아보자. Python에서 re사용법 POSIX와 거의 동일하다. 아래는 Python에서 패턴문자가 의미하는 것이다. 패턴문자 설명 . New line을 제외한 모든 문자, 플래그중에 re.DOTALL..

    [Python] - 모듈탐구 string과 Formatter - 문자열 자유자재로 다루기

    오랜만에 돌아온 모듈 탐구 시간이다. 이번 시간에는 일반 문자열 연산을 조금 더 편리하게 도와주는 string 모듈에 대해서 알아보자 제공하는 문자열 1. string.ascii_letters : 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' 2. string.ascii_lowercase : 'abcdefghijklmnopqrstuvwxyz' 3. string.ascii_uppercase : 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 4. string.digits : '0123456789' 5. string.hexdigits : '0123456789abcdefABCDEF' 6. string.octdigits :'01234567' 7. strin..

    [Python] - 모듈탐구 sys - 우리 Python 해부하기

    sys모듈은 Python 인터프리터의 환경설정 등에 접근한다. 흔히 사용하는 sys.modules 나 sys.path 뿐만이 아니라 더욱 폭넓은 기능과 정보들을 가지고 있으니, 이번 시간을 통해서 자세히 알아보도록 하자 sys에서 제공하는 정보 1. sys.argv : Python 스크립트에 전달된 명령 줄의 인자를 LIST형태로 전달한다. 스크립트 이름은 sys.argv[0]를 가지고 뒤에 전달이 되면 순서대로 sys.argv [1], [2]가 된다. 만약 실행형 옵션인 -c를 설정하면 sys.argv [0]는 "-c"가 된다. 2. sys.byteorder : 현재의 바이트표기법이 little인지 big인지를 표시한다. 3. sys.builtin_module_names : 현재 Python 인터프리터..

    [Python] - 모듈탐구 os - Python으로 내 컴퓨터 조작하기

    와 글이 날아갔다. 다시 쓴다. os는 Python에 내장되어있는 모듈 중 하나로, 저수준의 파일과 디렉터리 작업을 지원한다.(고수준의 기능과 확장성, 이식성이 필요하다면 shutil이라는 더 적합한 모듈이 있다.) 옛날 Latte에는 DOS OS를 이용한 window를 사용을 했다.(그 때의 Window는 이런 이쁘장한 화면 없었다~ 이 말이야) 검은 화면에 글자로 상호작용하는, 지금으로 치면 cmd명령프롬포트가 사용자와의 인터페이스 역할을 해주었다. os는 python수준에서 컴퓨터의 파일 시스템과 파일에 접근 / 처리를 지시할 수 있는 Python수준의 기능을 제공한다. 그러면 바로 만나보자 * 이 모듈탐구시간에는 WINDOW에서 사용되는 os모듈 함수들만을 다룬다 * * 파일디스크립터 함수는 나도..

    [Python] - 모듈탐구 pickle - 자료구조의 저장과 불러오기

    컴퓨터 세계에서 자주 사용되는 json이라는 표준이다. json은 Python을 자주 사용하는 사람이라면 아는 dictionary이라는 자료구조와 유사하게 생겼는데, 광범위하게 데이터 오브젝트를 인간이 읽을 수 있는 상태에서 전달하기 위한 표준이다. 다음은 json의 예시이다. { "file_format_version" : "1.0.0", "ICD": { "library_path": ".\\XXX.dll", "api_version": "1.0.3" } } // json파일의 예시 json처럼 객체를 저장하고 나중에 재구성할 수 있는 포맷으로 표기하는것을 직렬화(Seriallization), 그 데이터를 다시 불러오는 것을 역직렬화(Deseriallization)이라고 한다. Python은 json처럼 인..

    [Python] - 모듈탐구 copy - 뭐! 모듈이 복사가 된다고?

    혹시 이 글을 읽는 독자는 LIST의 복사를 시도해보았는가? 아마 a=[1,2,3]과 같은 LIST를 바로 b=a로 복사부터 시도했을 가능성이 크다(우리 Python은 직관적이어서 이거도 돼야 되는 거 아닌가?) 웃긴 건 이때 a [0]=5를 하면 b도 [5,2,3]이 된다는 점이다. 이는 복사의 깊이가 달라서 생기는 문제이다. 복사의 구분 복사는 수준에 따라 다음과 같이 구분된다. ① 얕은 복사(Shallow copy) : 메모리 주소만 같은 곳을 가리키게 복사되는것, 값이 복사되는 것은 아니다. ② 깊은 복사(Deep copy) : 실제 값까지 모두 복사되는 것 Python은 모듈 copy를 통해서 이 복사행위를 다룬다. 다음은 두 가지는 copy모듈이 제공하는 함수이다. 1. copy.copy(x)..