Spring, 2019 School of CSE Pusan National University

Slides:



Advertisements
Similar presentations
파이썬 (Python). 1 일 : 파이썬 프로그래밍 기초 2 일 : 객체, 문자열 3 일 : 문자인코딩, 정규표현식, 옛한글 4 일 : 파일 입출력 5 일 : 함수와 모듈 6 일 : 원시 말뭉치 다루기 실습 7 일 : 주석 말뭉치 다루기 실습 8 일 : 웹 데이터로.
Advertisements

Python Ch.06 RaspberryPi Sejin Oh. Raspberry Pi Python  IDLE(Integrated Development Environment)  라즈베리 파이 배포본들은 일반적으로 파이썬과 파이썬 3 의 IDLE 파 이썬 개발 도구를.
Python RaspberryPi Sejin Oh. Raspberry Pi Python  파이썬이란 무엇인가 ?  파이썬이란 1990 년 암스테르담의 귀도 반 로섬에 의해 만들어진 인 터프리터 언어이다.  파이썬은 사람이 생각하는 방식을 그대로 표현할 수 있도록.
프로그램이란 프로그램 생성 과정 프로젝트 생성 프로그램 실행 컴퓨터를 사용하는 이유는 무엇인가 ? – 주어진 문제를 쉽고, 빠르게 해결하기 위해서 사용한다. 컴퓨터를 사용한다는 것은 ? – 컴퓨터에 설치 혹은 저장된 프로그램을 사용하는 것이다. 문제를 해결하기 위한.
Chapter 12. 배열. 배열  동일한 항목들이 동일한 크기로 연속적으로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는 자료 구조.
1 08 배열. 한국대학교 객체지향연구소 2 C 로 배우는 프로그래밍 기초 2 nd Edition 배열  동일한 자료유형의 여러 변수를 일괄 선언  연속적인 항목들이 동일한 크기로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는.
1. 2 차원 배열  배열은 동일한 데이터 유형으로 여러 개의 변수를 사용할 경우 같은 이 름으로 지정하여 간편하게 사용할 수 있도록 하는 것으로서 앞에서 1 차원 배열을 공부하였습니다.  2 차원 배열은 바둑판을 생각하면 되며, 1 차원 배열에서 사용하는 첨자를 2.
이진 나무 구조 강윤섭 2008년 5월 23일.
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
두근두근 파이썬 수업 4장 자료의 종류에는 어떤 것들이 있나요?.
최윤정 Java 프로그래밍 클래스 상속 최윤정
Excel 일차 강사 : 박영민.
Python(파이썬) 하늘소 20기 서 정인.
연결리스트(linked list).
제 9 장 구조체와 공용체.
보고서 #7 (기한: 6/2) 2개의 스택, stk1, stk2를 이용하여 큐를 구현하라.
C 8장. 포인터 #include <stdio.h> int main(void) { int num;
Lesson 5. 레퍼런스 데이터형.
테이블 : 데이터베이스를 구성하는 요소로 같은 성격에 정보의 집합체. 레코드 : 하나의 정보를 가지고 있는 컬럼의 집합체
8.1 인터페이스 개요와 인터페이스 정의 8.2 인터페이스의 사용 8.3 인터페이스의 상속 8.4 인터페이스 참조
07 그룹 함수 그룹 함수의 개념 그룹 함수의 종류 데이터 그룹 생성 HAVING 절.
5장. 참조 타입.
Heesang kim PL/SQL 3 Heesang kim.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
Tail-recursive Function, High-order Function
프로그래밍 랩 – 7주 리스트.
공학컴퓨터프로그래밍 Python 염익준 교수.
자바 5.0 프로그래밍.
11장. 1차원 배열.
10강. JSP 본격적으로 살펴보기-II 스크립트릿, 선언, 표현식 지시자 주석 Lecturer Kim Myoung-Ho
Method & library.
JA A V W. 03.
프로그래밍 개요
어서와 C언어는 처음이지 제14장.
인터넷응용프로그래밍 JavaScript(Intro).
이름 : 황 상 두 전화번호 : 이메일 : PinTool 이름 : 황 상 두 전화번호 : 이메일 :
Java의 정석 제 5 장 배 열 Java 정석 남궁성 강의 의
Term Projects 다음에 주어진 2개중에서 한 개를 선택하여 문제를 해결하시오. 기한: 중간 보고서: 5/30 (5)
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
15장 컬렉션 프레임워크 Section 1 컬렉션 프레임워크의 개요 Section 2 리스트 Section 3 셋
포인터 1차원 배열과 포인터 2차원 배열과 포인터 문자열 배열과 포인터 포인터 배열
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
2장. 변수와 타입.
3D 프린팅 프로그래밍 05 – 반복패턴 만들기 강사: 김영준 목원대학교 겸임교수.
자바 5.0 프로그래밍.
보고서 #7 (기한: 6/2) 2개의 스택, stk1, stk2를 이용하여 큐를 구현하라.
문자열 컴퓨터시뮬레이션학과 2015년 봄학기 담당교수 : 이형원 E304호,
14강. 세션 세션이란? 세션 문법 Lecturer Kim Myoung-Ho Nickname 블스
CHAP 21. 전화, SMS, 주소록.
[ 단원 04 ] 반복과 배열.
2nd day Indexing and Slicing
데이터 동적 할당 Collection class.
에어 PHP 입문.
Chapter08 JavaScript 시작하기
Chapter 10 데이터 검색1.
세션에 대해 알아보고 HttpSession 에 대해 이해한다 세션 관리에 사용되는 요소들을 살펴본다
함수, 모듈.
발표자 : 이지연 Programming Systems Lab.
컴퓨팅 사고력을 키우는 SW 교육 : 스크래치 [강의교안 이용 안내] 본 강의교안의 저작권은 저자인 고광일과 한빛아카데미㈜에 있습니다. 이 자료는 강의 보조자료로 제공되는 것으로 무단으로 전제하거나 배포하는 것을 금합니다.
컴퓨터 프로그래밍 기초 - 9th : 배열 / 포인터 -
Static과 const 선언 조 병 규 한 국 교 통 대 학 교 SQ Lab..
17장. 문자열 01_ 문자열 사용의 기본 02_ 문자열의 사용.
Excel 일차 강사 : 박영민.
제 29 강 스트링(string) 다루기 s a i s . s T i h t g r i n.
Spring, 2019 School of CSE Pusan National University
어서와 C언어는 처음이지 제21장.
4 다문화 및 탈북학생 멘토링 진행.
 6장. SQL 쿼리.
7 생성자 함수.
6 객체.
Presentation transcript:

Spring, 2019 School of CSE Pusan National University Python의 자료형(2) Spring, 2019 School of CSE Pusan National University

문자열 메소드 함수와 메소드의 차이 함수는 그냥 이름으로 호출함 메소드(method)는 특정 대상에 소속된 함수이므로 특정 대상과 함께 호출함 a의 메소드 f는 a.f()와 같은 형태로 호출함 문자열 대소문자 변환: s.upper(), s.lower() 특정 부분 문자열 X를 Y로 치환: s.replace(X, Y) 좌우 공백을 제거함: s.strip(), s.lstrip(), s.rstrip() 리스트로 변환: s.split() 부분 문자열 개수를 셈: s.count(ss) 부문 문자열 검색: s.find(ss), s.rfind(ss), s.index(ss) 참고: http://docs.python.org/2/library/string.html#string-functions

문자열 메소드를 적용해도 원 문자열은 변경되지 않고 새로운 문자열이 생성된다는 사실에 주의하자. 문자열 메소드 사용 예 문자열 메소드 사용예 문자열 메소드를 테스트해 보자. s = 'Hello Python?' print s.upper() print s.lower() print s.replace('Hello', 'Good') print s t = ' Romeo and Juliet ' print '|%s|'%t.lstrip() print '|%s|'%t.rstrip() print '|%s|'%t.strip() print '|%s|'%t 실행결과를 예측해 보고 실제 결과를 통해 확인해 보자. 문자열 메소드를 적용해도 원 문자열은 변경되지 않고 새로운 문자열이 생성된다는 사실에 주의하자.

리스트 메소드 리스트 메소드 예 리스트 메소드 참고자료 list.append(x): 리스트 맨 뒤에 항목 x를 추가함 list.extend(L): 리스트 뒤에 리스트 L의 모든 원소를 붙임 list.insert(i, x): 리스트의 위치 i에 항목 x를 삽입함 list.remove(x): 처음 나타나는 x를 제거함. 그런 x가 없으면 오류 list.pop(), list.pop(i): 리스트의 맨 뒤 항목을 제거함. i가 주어지면 위치 i의 항목을 제거함 list.index(x): 처음 나타나는 x의 위치. 그런 x가 없으면 오류 list.sort(): 리스트를 정렬함 list.reverse(): 리스트의 앞, 뒤를 바꿈. 리스트를 역전시킴 리스트 메소드 참고자료 http://docs.python.org/2/library/stdtypes.html#sequence-types-str-unicode-list-tuple-bytearray-buffer-xrange

리스트 메소드 사용 예 리스트 메소드를 테스트해 보자. 실행결과를 예측해 보고 실제 결과를 통해 확인해 보자. a = [66.25, 333, 333, 1, 1234.5] print a.count(333), a.count(66.25), a.count('x') a.insert(2, -1) a.append(333) print a a.index(333) a.remove(333) a.reverse() a.sort() 실행결과를 예측해 보고 실제 결과를 통해 확인해 보자.

문자열과 리스트 string 패키지의 split() 메소드 import string song = "I am just a poor boy" words = string.split(song) print words print string.split(song, 'a') 리스트의 join() 메소드 split()과 반대 역할을 수행하며 단어 사이를 연결할 문자열 con을 두 번째 인수로 받음 print string.join(words) print string.join(words, '-')

튜플 튜플이란? 튜플 생성 방법 print (1,2,3) print (1, 2, ('Hello'), 'Python') 튜플(tuple)은 순서쌍 타입임 문자열과 마찬가지로 내용을 바꿀 수 없음 튜플 생성 방법 괄호를 이용하여 생성함 print (1,2,3) print (1, 2, ('Hello'), 'Python') 원소 하나짜리 튜플에는 쉼표를 반드시 사용해야 함 print (1,) 빈 튜플은 ()로 나타냄 print ()

튜플 연산자 원소 참조 tuple = (1, 2, ('Hello',), 'Python') print tuple[1] 리스트와 마찬가지로 첨자 연산을 사용할 수 있음 tuple = (1, 2, ('Hello',), 'Python') print tuple[1] print tuple[2][0] 슬라이스도 사용 가능함 print tuple[1:3] 튜플 더하기와 반복 +를 이용한 접합 print tuple + tuple *를 이용한 반복 print tuple * 3

사전 사전이란? 사전 생성 방법 pnu = {'name':'PNU', 'location':'Busan'} print pnu ‘key:value’ 형태의 자료가 여러 개 저장된 자료형을 사전(dictionary)이라고 함 표제어인 key는 변경될 수 없고 값인 value는 변경될 수 있음 사전 생성 방법 사전 리터럴은 중괄호와 쉼표를 이용하여 생성함 pnu = {'name':'PNU', 'location':'Busan'} print pnu 빈 사전 {}부터 시작하여 하나씩 생성할 수 있음 pnu = {} pnu['name'] = 'PNU' pnu['location'] = 'Busan'

사전 연산자 첨자 연산 print pnu['location'] pnu['nation'] = 'Korea' print pnu key를 첨자로 사용하여 값을 참조할 수 있음 print pnu['location'] 물론 key를 첨자로 하여 값을 변경할 수도 있음 pnu['nation'] = 'Korea' print pnu 항목 삭제 연산 key:value 항목을 하나 삭제하려면 del 명령어를 이용함 del을 이용할 경우에도 첨자 연산을 이용함 del pnu['nation'] 사전의 항목 저장 순서가 무엇인지 예측해 보자.

사전 메소드 keys()와 values() keys(): 사전의 표제어(key)만 모아서 리스트로 만들어 줌 values(): 사전의 값(value)만 모아서 리스트로 만들어 줌 pnu = {'name':'PNU', 'location':'Busan', 'nation':'Korea'} print pnu.keys() print pnu.values() items() 표제어와 값을 순서쌍으로 만들어서 리스트로 만들어 줌 print pnu.items() 기타 메소드 has_key(): 원하는 표제어가 있는지 검사함 clear(): 사전의 모든 내용을 삭제함

요 약 자료와 자료형 Python의 자료형 문자열과 리스트 튜플과 사전 자료형은 자료의 집합으로 볼 수 있음 자료형은 자료의 크기와 형태를 결정함 Python의 자료형 스칼라 타입과 구조 타입으로 나눌 수 있음 대표적인 구조 타입으로는 문자열, 리스트, 튜플, 사전 등이 있음 문자열과 리스트 문자열과 리스트는 서로 변환 가능함 for 문: 문자열과 리스트를 다루기에 적합한 반복문 튜플과 사전 튜플은 순서쌍 타입으로 원소를 바꿀 수 없음 사전은 key:value 쌍으로 이루어진 구조 타입