일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- python Django
- 파이썬 클래스
- activate 오류
- 성공
- By.CLASS_NAME
- Kotlin 클래스
- Kotlin 클래스 속성정의
- 파이썬
- 희망
- 파이썬 장고
- Kotlin If
- Kotlin 조건문
- 파이썬 제어문
- 강제 타입변환
- 좋은글
- 파이썬 반복문
- 다중조건문
- 클래스 속성
- django virtualenv
- Variable declaration
- Kotlin else if
- 장고 가상환경
- 자바 기본타입
- add-data
- Kotlin Class
- git
- 도전
- Python
- Python Class
- github
- Today
- Total
목록전체 글 (52)
키모스토리
collections.Counter는 리스트나 문자열과 같은 자료형의 요소 중 값이 같은 요소가 몇 개인지를 확인할 때 사용하는 클래스이다. 문제 다음은 김소월의 시 '산유화'이다. 잠시 여유를 갖고 감상해 보자. 산에는 꽃 피네. 꽃이 피네. 갈 봄 여름없이 꽃이 피네. 산에 산에 피는 꽃은 저만치 혼자서 피어있네. 산에서 우는 새여 꽃이 좋아 산에서 사노라네. 산에는 꽃지네 꽃이 지네. 갈 봄 여름 없이 꽃이 지네. 이 시에서 가장 많이 사용한 단어와 그 개수를 구하려면 어떻게 해야 할까? 풀이 이 문제를 해결하려면 이 시를 단어별로 나누고 딕셔너리를 사용하여 각 개수를 0으로 초기화하고 나서 해당 단어가 반복될 때마다 1씩 증가하여 빈도수를 알아내는 방법을 써야 한다. 하지만, 여기서는 더 쉬운 방..
튜플(tuple)은 인덱스를 통해서만 데이터에 접근할 수 있지만 네임드 튜플(named tuple)은 인덱스뿐만 아니라 키(key)로도 데이터에 접근할 수 있는 자료형이다. collections.namedtuple()은 키값으로 데이터에 접근할 수 있는 튜플을 생성하는 함수이다. 문제 직원 주소록을 만들고자 다음과 같이 이름, 나이, 휴대전화로 구성된 직원 정보 데이터를 이용하려 한다. data = [ ('홍길동', 23, '01099990001'), ('김철수', 31, '01099991002'), ('이영희', 29, '01099992003'), ] 하지만, 리스트의 요소가 튜플이라 데이터에 접근하기가 쉽지 않다. 왜냐하면 데이터를 확인하려면 튜플 데이터의 인덱스 순서가 무엇을 뜻하는지 알아야 하기 ..
collections.deque deque는 앞과 뒤에서 데이터를 처리할 수 있는 양방향 자료형으로, 스택(stack)처럼 써도 되고 큐(queue)처럼 써도 된다. collections.deque 모듈은 deque 자료형을 생성하는 모듈이다. deque는 '데크'라 읽는다. 문제 다음과 같이 시계방향으로 1~5가 적힌 다이얼이 있으며 현재 가리키는 눈금은 1이다. [1, 2, 3, 4, 5] 이 다이얼을 오른쪽으로 2칸 돌려 가리키는 눈금이 4가 되도록 하려면 어떻게 해야 할까? [4, 5, 1, 2, 3] 풀이 리스트를 n만큼 회전하는 문제는 알고리즘 문제에서 자주 등장한다. 파이썬에서는 collections.deque 모듈을 사용하면 간단하게 이 문제를 해결할 수 있다. >>> from collec..
datetime.date(년, 월, 일) 날짜데이터를 생성. import datetime # 날짜1 데이터 출력 day1 = datetime.date(2020, 12, 10) print(day1) # 날짜2 데이터 출력 day2 = datetime.date(2022, 12, 17) print(day2) # day1에서 day2까지 날자계산(몇일이 지난것인지 계산) diff = day2-day1 print(diff) print(diff.days) # day2-day1 > 737 days, 0:00:00 같이 00일, 시:분:초를 표시 # diff.days > 737 과 같이 날짜값만 표시 실행결과 2020-12-10 2022-12-17 737 days, 0:00:00 737 datetime.datetime..
파이썬의 내장 함수는 모듈이나 패키지를 가져오지 않고 바로 사용할 수 있는 함수입니다. 다음은 자주 사용하는 내장 함수입니다. abs abs(x)는 어떤 숫자를 입력받았을 때, 그 숫자의 절댓값을 리턴하는 함수이다. >>> abs(3) 3 >>> abs(-3) 3 >>> abs(-1.2) 1.2 all all(x)는 반복 가능한(iterable) 데이터 x를 입력 값으로 받으며 이 x의 요소가 모두 참이면 True, 거짓이 하나라도 있으면 False를 리턴한다. 반복 가능한 데이터란 for 문에서 사용 가능한 자료형을 의미한다. 리스트, 튜플, 문자열, 딕셔너리, 집합 등이 있다. 다음 예를 보자. >>> all([1, 2, 3]) True 리스트 [1, 2, 3]은 모든 요소가 참이므로 True를 리턴..
모듈 만들기 모듈에 대해 자세히 살펴보기 전에 간단한 모듈을 한번 만들어 보자. # mod1.py def add(a, b): return a + b def sub(a, b): return a-b 위와 같이 add와 sub 함수만 있는 파일 mod1.py를 만들고 C:\doit 디렉터리에 저장하자. 이 mod1.py 파일이 바로 모듈이다. 지금까지 에디터로 만든 파이썬 파일과 다르지 않다. 파이썬 확장자 .py로 만든 파이썬 파일은 모두 모듈이다. 모듈 불러오기 우리가 만든 mod1.py 파일, 즉 모듈을 파이썬에서 불러와 사용하려면 어떻게 해야 할까? 먼저 다음과 같이 명령 프롬프트 창을 열고 mod1.py를 저장한 디렉터리(이 책에서는 C:\doit)로 이동한 다음 대화형 인터프리터를 실행해 보자. C..
클래스는 왜 필요한가? 프로그래머들이 가장 많이 사용하는 프로그래밍 언어 중 하나인 C 언어에는 클래스가 없다. 이 말은 굳이 클래스가 없어도 프로그램을 충분히 만들 수 있다는 뜻이다. 파이썬으로 잘 만든 프로그램을 살펴보아도 클래스를 사용하지 않고 작성한 것들이 상당히 많다. 클래스는 지금까지 공부한 함수나 자료형처럼 프로그램 작성을 위해 꼭 필요한 요소는 아니다. 하지만 프로그램을 작성할 때 클래스를 적재적소에 사용하면 프로그래머가 얻을 수 있는 이익은 상당하다. 예제를 통해 한번 생각해 보자. 여러분 모두 계산기를 사용해 보았을 것이다. 계산기에 숫자 3을 입력하고 + 기호를 입력한 후 4를 입력하면 결괏값으로 7을 보여 준다. 다시 한 번 + 기호를 입력한 후 3을 입력하면 기존 결괏값 7에 3을..
endswith() endswith()를 이용하여 문자열이 특정 문자열로 끝이 나는지 확인할 수 있습니다. 1. endswith()로 문자열이 특정 문자열로 끝나는지 확인 예를 들어 다음과 같이 'Hello world, Python'가 Python 으로 끝나는지 확인할 수 있습니다. str = 'Hello world, Python' if str.endswith('Python'): print('It ends with Python') if not str.endswith('Hello'): print('It does not ends with Hello') Output: It ends with Python It does not end with Hello 만약 대소문자를 구분하지 않고 비교를 하고 싶다면 lower..
startwith() startswith()를 이용하여 문자열이 특정 문자열로 시작하는지 확인할 수 있습니다. 1. startswith()로 문자열이 특정 문자열로 시작하는지 확인 예를 들어 다음과 같이 'Hello world, Python!'가 Hello로 시작하는지 확인할 수 있습니다. str = 'Hello world, Python!' if str.startswith('Hello'): print('It starts with Hello') if not str.startswith('Python'): print('It does not start with Python') Output: It starts with Hello It does not start with Python 만약 대소문자를 구분하지 않고 ..
코딩시 자주 접하게 되는 문자열 자료형에 관한 연습문제를 통해 한번 더 학습하고 넘어 갑니다. 021 문자열 인덱싱 letters가 바인딩하는 문자열에서 첫번째와 세번째 문자를 출력하세요. >> letters = 'python' 실행 예 p t 정답확인 파이썬 문자열에서 한 글자를 가져오는 것을 인덱싱이라고 부릅니다. 파이썬 인덱싱은 0부터 시작합니다. lang = 'python' print(lang[0], lang[2]) 022 문자열 슬라이싱 자동차 번호가 다음과 같을 때 뒤에 4자리만 출력하세요. >> license_plate = "24가 2210" 실행 예: 2210 정답확인 문자열에서 여러 글자를 가져오는 것을 슬라이싱이라고 부릅니다. 음수 값은 문자열의 뒤에서부터 인덱싱 또는 슬라이싱함을 의미..