일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 책추천
- 파이썬
- 구글애널리틱스
- 연말정산
- 파이썬문자열
- GA4
- 구글애널리틱스공부
- 유튜브
- 파이썬내장함수
- 카페24
- 신용카드추천
- 파이썬프로그래밍
- GA공부
- 파이썬공부
- 구글애널리틱스4
- GA설치
- 파킹통장
- 파킹통장추천
- 파이썬정규표현식
- 마케팅
- 구글애널리틱스강의
- GA가이드
- GA
- 페이스북광고
- 구글애널리틱스가이드
- 파이썬함수
- 유튜브광고
- 국민내일배움카드
- 구글ads
- 메이크샵
- Today
- Total
목록6.개발/파이썬 공부하기 (67)
정리왕
한 문장씩 순서대로 처리되는 구조를 순차 구조(Sequential structure)라고 한다. 조건식으로 평가한 결과에 따라 프로그램의 실행 흐름이 변경되는데 이러한 구조를 선택 구조(Select Structure)라고 한다. 문자열을 정수형으로 변환하는 과정을 형 변환(type conversion) 이라고 한다. 부동 소수점(floating point)은 컴퓨터에서 실수를 근사값으로 표현할 때 사용한다. 부동 소수점 방식은 실수를 가수 부분과 지수 부분으로 나누어 표현하는 것을 말한다. 이때 가수 부분은 유효 숫자를 나타내고 지수 부분은 소수점의 위치를 나타낸다. 부동 소수점 방식은 고정 소수점 방식보다 넓은 범위의 수를 나타낼 수 있어서 과학 또는 수학 계산을 할 때 많이 이용한다. 하지만 근사값으..
강력한 정규 표현식의 세계로 이제 07-2에서 배우지 않은 몇몇 메타 문자의 의미를 살펴보고 그룹(Group)을 만드는 법, 전방 탐색 등 더욱 강력한 정규 표현식에 대해서 살펴보자. 메타 문자 아직 살펴보지 않은 메타 문자에 대해서 모두 살펴보자. 여기에서 다룰 메타 문자는 앞에서 살펴본 메타 문자와 성격이 조금 다르다. 앞에서 살펴본 +, * , [ ], { } 등의 메타문자는 매치가 진행될 때 현재 매치되고 있는 문자열의 위치가 변경된다(보통 소비된다고 표현한다). 하지만 이와 달리 문자열을 소비시키지 않는 메타 문자도 있다. 이번에는 이런 문자열 소비가 없는(zerowith assertions)메타 문자에 대해 살펴보자. 1) | | 메타 문자는 or과 동일한 의미로 사용된다. A|B라는 정규식이..
파이썬에서 정규 표현식을 지원하는 re 모듈 파이썬은 정규 표현식을 지원하기 위해 re(regular expresssion의 약어) 모듈을 제공한다. re 모듈은 파이썬을 설치할 때 자동으로 설치되는 기본 라이브러리로 사용 방법은 다음과 같다. >>> import re >>> p = re.compile('ab*') re.compile을 사용하여 정규 표현식(위 예에서는 ab*)을 컴파일한다. re.compile의 결과로 돌려주는 객체 p(컴파일된 패턴 객체)를 사용하여 그 이후의 작업을 수행할 것이다. 정규식을 컴파일할 때 특정 옵션을 주는 것도 가능한데, 이에 대해서는 뒤에서 자세히 살펴본다. 패턴이란 정규식을 컴파일한 결과이다. 정규식을 사용한 문자열 검색 이제 컴파일된 패턴 객체를 사용하여 문자열 ..
정규 표현식의 기초, 메타 문자 정규 표현식에서 사용하는 메타 문자 (meta characters)에는 다음과 같은 것이 있다. . ^ % * + ? { } [ ] \ | ( ) ★메타 문자란 원래 그 문자가 가진 뜻이 아닌 특별한 용도로 사용하는 문자를 말한다. 정규 표현식에 위 메타 문자를 사용하면 특별한 의미를 갖게 된다. 자, 그러면 가장 간단한 정규 표현식부터 시작해 각 메타 문자의 의미와 사용법을 알아보자. 문자 클래스 [ ] 우리가 가장 먼저 살펴볼 메타 문자는 바로 문자 클래스(character class)인 [ ]이다. 문자 클래스로 만들어진 정규식은 '[ ]사이의 문자들과 매치' 라는 의미를 갖는다. 문자 클래스를 만드는 메타 문자인 [ ] 사이에는 어떤 문자도 들어갈 수 있다. 즉, ..
정규표현식 (regular expressions)은 복잡한 문자열을 처리할 때 사용하는 기법으로, 파이썬만의 고유 문법이 아니라 문자열을 처리하는 모든 곳에서 사용한다. 정규식을 배우는 것은 파이썬을 배우는 것과는 또 다른 영역의 과제이다. 정규 표현식은 왜 필요한가? 다음과 같은 문제가 주어졌다고 가정해 보자. 주민등록번호를 포함하고 있는 텍스트가 있다. 이 텍스트에 포함된 모든 주민등록번호의 뒷자리를 * 문자로 변경해 보자. 우선 정규식을 전혀 모르면 다음과 같은 순서로 프로그램을 작성해야 할 것이다. 1. 전체 텍스트를 공백 문자로 나눈다 (split) 2. 나뉜 단어가 주민등록번호 형식인지 조사한다. 3. 단어가 주민등록번호 형식이라면 뒷자리를 *로 변환한다. 4. 나뉜 단어를 다시 조립한다. 이..
원하는 메모를 파일에 저장하고 추가 및 조회가 가능한 간단한 메모장을 만들어 보자. 필요한 기능은? 메모 추가하기, 메모 조회하기 입력받는 값은? 메모 내용, 프로그램 실행 옵션 출력하는 값은? memo.txt 가장 먼저 해야 할 일은 메모를 추가하는 것이다. 다음 명령을 실행했을 때 메모를 추가할 수 있도록 만들어 보자. python memo.py -a "Life is too short" memo.py는 우리가 작성할 파이썬 프로그램 이름이다. -a는 이 프로그램의 실행 옵션이고 "Life is too short"는 추가할 메모 내용이 된다. 1. 우선 다음과 같이 입력으로 받은 옵션과 메모를 출력하는 코드를 작성해 보자. sys.argv는 프로그램을 실행할 때 입력된 값을 읽어 들일 수 있는 파이썬 ..
자, 다음 문제를 어떻게 풀면 좋을지 생각해 보자. 10미만의 자연수에서 3과 5의 배수를 구하면 3, 5, 6, 9 이다. 이들의 총 합은 23이다. 1000 미만의 자연수에서 3의 배수와 5의 배수의 총합을 구하라. 입력받는 값은? 1부터 999까지 (1,000 미만의 자연수) 출력하는 값은? 3의 배수와 5의 배수의 합 생각해 볼 것은? 하나. 3의 배수와 5의 배수는 어떻게 찾지? 둘. 3의 배수와 5의 배수가 겹칠 때는 어떻게 하지? 이 문제를 풀기 위한 중요 포인트는 2가지이다. 한가지는 1,000 미만의 자연수를 구하는 방법이고 또 다른 한가지는 3과 5의 배수를 구하는 것이다. 이 두 가지만 해결되면 문제는 쉽게 해결될 것으로 보인다. 1. 먼저 1000미만의 자연수는 어떻게 구할 수 있을..
이제 파이썬 프로그래밍 능력을 높여 줄 더 큰 날개를 달아 보자. 전 세계의 파이썬 사용자들이 만든 유용한 프로그램을 모아 놓은 것이 바로 파이썬 라이브러리이다. '라이브러리'는 '도서관'이라는 뜻 그대로 원하는 정보를 찾아보는 곳이다. 모든 라이브러리를 다 알 필요는 없고 어떤 일을 할 때 어떤 라이브러리를 사용해야 한다는 정도만 알면 된다. 그러기 위해 어떤 라이브러리가 존재하고 어떻게 사용하는지 알아야 한다. 자주 사용되고 꼭 알아 두면 좋은 라이브러리 중심으로 하나씩 살펴보자. ★ 파이썬 라이브러리는 파이썬을 설치할 때 자동으로 컴퓨터에 설치한다. 1. sys sys모듈은 파이썬 라이브러리가 제공하는 변수와 함수를 직접 제어할 수 있게 해주는 모듈이다. 1) 명령 행에서 인수 전달하기 - sys...
21. open open(filename, [mode])은 '파일 이름'과 '읽기 방법'을 입력받아 파일 객체를 돌려주는 함수이다. 읽기 방법(mode)을 생략하면 기본값인 읽기 전용 모드(r)로 파일 객체를 만들어 돌려준다. 모드 설명 w 쓰기 모드로 파일 열기 r 읽기 모드로 파일 열기 a 추가 모드로 파일 열기 b 바이너리 모드로 파일 열기 b는 w, r, a 와 함께 사용한다. >>> f = open("binary_file", "rb") 위 예의 rb는 '바이너리 읽기 모드'를 의미한다. 다음 예의 fread와 fread2는 동일한 방법이다. >>> fread = open("read_mode.txt", 'r') >>> fread2 = open("read_mode.txt") 즉 모드 부분을 생략하면..