반응형

개발자/파이썬 Python 59

파이선 클래스 기초 1. 리얼파이선 18

9. 클래스 클래스는 데이터와 기능을 함께 묶는 방법을 제공합니다. 새 클래스를 만드는 것은 객체의 새 데이터 형을 만들어서, 그 형의 새 인스턴스를 만들 수 있도록 합니다. 각 클래스 인스턴스는 상태를 유지하기 위해 그 자신에게 첨부된 어트리뷰트를 가질 수 있습니다. 클래스 인스턴스는 상태를 바꾸기 위한 (클래스에 의해 정의된) 메서드도 가질 수 있습니다. 다른 프로그래밍 언어들과 비교할 때, 파이썬의 클래스 메커니즘은 최소한의 새로운 문법과 개념을 써서 클래스를 추가합니다. C++과 모듈라-3에서 발견되는 클래스 메커니즘을 혼합합니다. 파이썬 클래스는 객체 지향형 프로그래밍의 모든 표준 기능들을 제공합니다: 클래스 상속 메커니즘은 다중 베이스 클래스를 허락하고, 자식 클래스는 베이스 클래스나 클래스들..

파이선 모듈과 패키지 사용하는 법. 리얼파이선 17

모듈은 변수, 연산, 제어, 함수 중에서 어디에 속할까요? 함수입니다. 모듈 자체에 변수, 연산, 제어, 함수 모두 들어있는 변수와 실행문의 집합일 뿐입니다. 파이선 모듈과 패키지 사용하는 법. 리얼파이선 17 모듈 파이썬 인터프리터를 종료한 후에 다시 들어가면, 여러분이 만들었던 정의들이 사라집니다 (함수나 변수들). 그래서, 좀 긴 프로그램을 쓰고자 한다면, 대신 인터프리터 입력을 편집기를 사용해서 준비한 후에 그 파일을 입력으로 사용해서 실행하는 것이 좋습니다. 이렇게 하는 것을 스크립트를 만든다고 합니다. 프로그램이 길어짐에 따라, 유지를 쉽게 하려고 여러 개의 파일로 나누고 싶을 수 있습니다. 여러 프로그램에서 썼던 편리한 함수를 각 프로그램에 정의를 복사하지 않고도 사용하고 싶을 수도 있습니다..

파이선 자료구조 딕셔너리 dictionary 와 루프 테크닉, 리얼파이선 16

파이썬에 내장된 또 하나의 유용한 자료형은 딕셔너리입니다 (매핑 형 - dict를 보세요). 딕셔너리는 종종 다른 언어들에서 《연관 메모리(associative memories)》 나 《연관 배열(associative arrays)》 의 형태로 발견됩니다. 숫자들로 인덱싱 되는 시퀀스와 달리, 딕셔너리는 키로 인덱싱 되는데, 모든 불변형을 사용할 수 있습니다; 문자열과 숫자들은 항상 키가 될 수 있습니다. 파이선 자료구조 딕셔너리 dictionary와 루프 테크닉, 리얼파이선 16 튜플이 문자열, 숫자, 튜플들만 포함하면, 키로 사용될 수 있습니다; 튜플이 직접적이나 간접적으로 가변 객체를 포함하면, 키로 사용될 수 없습니다. 리스트는 키로 사용할 수 없는데, 리스트는 인덱스 대입, 슬라이스 대입, ap..

파이선 자료구조 집합 Set 특징, 리얼파이선 15

파이선의 자료형 Set은 집합을 위한 자료형입니다. 집합은 중복되는 요소가 없고, 순서 없는 컬렉션입니다. 기본적인 용도는 멤버십 검사와 중복 엔트리 제거입니다. 집합 객체는 합집합, 교집합, 차집합, 대칭 차집합과 같은 수학적인 연산들도 지원합니다. 집합의 특징을 간단히 짚어보면 set() 키워드 혹은 중괄호를 이용합니다. 순서가 없습니다. 순서가 없기 때문에 인덱싱이 불가능합니다. 고유한 값을 가집니다. (값 중복 불가능) mutable(수정 가능한, 값이 변하는) 객체입니다. 파이선 자료구조 집합 Set 특징, 리얼파이선 15 집합을 만들 때는 중괄호나 set() 함수를 사용할 수 있습니다. 주의사항: 빈 집합을 만들려면 set() 을 사용해야 합니다. {} 가 아닙니다; 후자는 빈 딕셔너리를 만드..

파이선 자료구조 튜플 tuple 특성. 리얼파이선 14

리스트와 string 문자열이 인덱싱(항목 순서를 매기는 일)과 슬라이싱(일부분으로 자르는) 연산과 같은 많은 성질을 공유함을 보았습니다. 이것들은 시퀀스 자료 형의 두 가지 예입니다 (시퀀스 형 — list, tuple, range를 보세요). 파이썬은 진화하는 언어이기 때문에, 다른 시퀀스 자료형이 추가될 수도 있습니다. 다른 표준 시퀀스 자료 형이 있습니다: 바로 튜플입니다. 파이선 튜플은 list와 거의 비슷하지만 변경 불가능(Immutable)한 특성을 가지고 있습니다. 변경 가능한 특성은 뮤터블 mutable 이라고 합니다.) 리스트와 마찬가지로 튜플에 대해서도 슬라이스(잘라내기)와 인덱싱 등은 지원을 하지만 append, pop, remove 등은 지원하지 않습니다. 즉, 값을 가져올 수 있..

파이선 자료구조 List 사용법. 리얼 파이선 13

파이썬에는 다른 언어와 비슷하게 자료를 배열처럼 사용하는 방법이 있습니다. 물론 다른 언어에서 가지고 있는 배열과 비슷한 특징을 가지고 있으며, 추가 기능이 많습니다. 파이썬의 자료구조 형태중 하나로 List 리스트는 값을 순서대로 나열하는 데이터 구조라고 정의할 수 있겠습니다. 또한 List는 시퀀스 데이터 이기도 합니다. 시퀀스는 데이터의 순서를 정하는 것을 의미합니다. 순서를 가지고 있기 때문에 인덱스(index)를 사용하여 참조할 수 있습니다. 인덱스란 순서가 있는 항목의 일련번호를 뜻합니다. 파이선 자료구조 List 사용법. 리얼 파이선 13 파이썬에서의 시퀀스 자료형은(순서를 정함) string, list, tuple 자료형이 있으며, 시퀀스 자료형이 아닌 것은(순서를 정하지 않음) set, ..

파이선 입력과 출력. 리얼파이선 12

프로그램의 출력을 표현하는 여러 가지 방법이 있습니다; 사람이 일기에 적합한 형태로 데이터를 인쇄할 수도 있고, 나중에 사용하기 위해 파일에 쓸 수도 있습니다. 이 장에서는 몇 가지 가능성을 논합니다. 아래 문서는 파이선 한글 자습서 7장의 내용입니다. 서식 문자열, 포매팅 방법과 중복되는 내용이 있지만 반복적으로 실습하는 일은 무엇보다 중요합니다. ^^ 파이선 입력과 출력. 리얼파이선 12 장식적인 출력 포매팅 지금까지 우리는 값을 쓰는 두 가지 방법을 만났습니다: 표현식 문장과 print() 함수입니다. (세 번째 방법은 파일 객체의 write() 메서드를 사용하는 것입니다; 표준 출력 파일은 sys.stdout 로 참조할 수 있습니다. 이것에 대한 자세한 정보는 라이브러리 레퍼런스를 보세요.) 종종..

파이선 서식 지정자와 출력 포맷팅. 리얼파이선 11

파이썬에서 무엇인가 출력할 때 print() 함수를 사용해 데이터를 모니터로 출력합니다. 출력하는 내용을 문자열로 만들어서 표현할 수 있습니다. 데이터를 문자열로 만들던, 아니면 데이터 자체가 갖는 자료형으로 사용하던지 결국 화면에 출력되는 결과물은 문자열로 인식합니다. 파이선 서식 지정자와 출력 포맷팅. 리얼파이선 11 생각해보면 당연한 것이 만약 공책에 연필로 숫자를 쓰거나 문자를 쓰거나 혹은 *, $, % 와 같은 특수 문자를 쓰던 어떤 것이든 문자로 표현되기 때문이죠. 우리의 인식이 숫자나 문자 그리고 특수문자일 뿐이지, 실제적으로 표현되는 것은 '문자열'입니다. '문자열 포매팅'이란, 문자열을 형식화된 문자열로 표현하는 방법입니다. 문자열을 이용하여 어떠한 데이터를 표현할 때, 그 데이터를 표시..

파이선 문자열 메소드 Method, 리얼파이선 10

파이선은 문자열을 잘 다루는 언어답게 문자열을 조작하거나 정보를 얻는 다양한 메서드(method)를 제공합니다. 파이썬에서 제공하는 문자열 메서드는 여러 가지가 있지만 여기서는 자주 쓰는 메서드를 다루겠습니다. 파이선 문자열 메소드 Method, 리얼파이선 10 메소드는 모두 외우는 게 아니라 그때그때 필요한 메소드를 찾아보고 필요에 맞는 적당한 함수를 사용하면 됩니다. 실습은 한 번씩 해보시기 바랍니다. 문자열 바꾸기 replace('바꿀문자열', '새문자열')은 문자열 안의 문자열을 다른 문자열로 바꿉니다(문자열 자체는 변경하지 않으며 바뀐 결과를 반환합니다). 다음은 문자열 'Hello, world!'에서 'world'를 'Python'으로 바꾼 뒤 결과를 반환합니다. >>> 'Hello, worl..

파이선 문자열 다루기. 리얼파이선 9

텍스트는 프로그램이 처리해야 할 가장 일반적인 데이터 유형 가운데 하나입니다. 특히 파이선은 문자열을 다루는 많은 기능을 가지고 있습니다. 문자열 처리에 아주 최적화된 언어이기 때문입니다. 이미 + 연산자로 두 개의 문자열 값을 연결하는 방법을 알고 있지만 그보다 훨씬 더 많은 일을 할 수 있습니다. 문자열 값에서 부분 문자열을 추출할 수도 있고, 빈칸을 넣거나 뺄 수도 있으며, 글자를 소문자 또는 대문자로 변환하거나 문자열이 올바르게 지정되었는지 확인하는 문자로 변환, 추가하거나 빈칸을 제거할 수 있습니다. 파이선 문자열 다루기. 리얼파이선 9 텍스트를 복사하거나 붙여 넣기 위해 클립보드를 사용하는 파이선 코드를 만들 수도 있습니다. 여기서 문자열을 다루는 모든 기능을 익히시기 바랍니다. 함수는 반드시..

파이선 함수. 리얼파이선 8

파이선 함수 리얼파이선 8 앞 장에서 파이선 제어에 대해 알아보았죠. 변수, 연산, 제어에 이어 이제 함수에 대해 배워보겠습니다. 함수란 특정한 기능을 실행하기 위해 블랙박스처럼 구현한 코드의 집합을 말합니다. 함수 안에는 다시 변수, 연산, 제어, 함수가 모두 들어있습니다. 다른 말로 모듈, 패키지, 라이브러리, API, 메써드 등 불리는 이름은 다르더라도 의미로는 함수를 지칭하는 단어입니다. 한 가지 기능을 하는 하나의 함수를 만들기 위해 노력하세요. 함수는 블랙박스와 같습니다. 함수에 대해서 알아야 할 것은 입력 매개변수(인자)와 출력 값(리턴값이 있든 없든)이 전부일 때가 많습니다. 함수의 코드가 실제로 어떻게 돌아가는지 알아야 할 부담감을 항상 느껴야 할 필요는 없습니다. 함수를 어떤 기능을 하..

파이선 제어문 리얼파이선 7

제어란 프로그램의 처리, 실행 흐름을 바꿔주는 것을 말합니다. 일련의 코드는 보통 순차적으로 실행하지만 상황에 따라서 조건부 실행, 반복 실행, 분기 실행, 선택 실행, 중단, 되돌아가기, 건너뛰기 등 많은 변화를 주기도 합니다. 파이선 제어문 리얼파이선 7 프로그램 실행 순서를 제어하는 방식에는 순차적 실행, 선택실행, 반복 실행, 재귀(순환) 실행, 예외처리, 함수 프로그램 호출, 동시 실행 등이 있으며, 모든 프로그래밍 언어에는 다양한 제어문이 존재하고 아래와 같은 형식을 가지고 있습니다. 당연히 코드 구문과 규칙은 다르지만 의미는 동일합니다. 일반적인 제어문 키워드 if/else/elif 문 : 조건에 따라 달라지게 실행 함 while 문, do/while 문 : 조건에 따라 반복 실행의 무한 지..

파이선 연산 리얼파이선 6

Python에서 제공하는 연산자들을 간략하게 살펴보겠습니다. Python에서 제공하는 연산자 종류에는 산술, 비교, 대입, 논리, 비트, 멤버십, 참조 비교 연산자가 있어요. 여기에서는 간략하게 연산 기호와 예제를 보여줍니다. 파이선 연산 리얼파이선 6 산술 연산자 (+, -, *, /, %, **, //) +, -, *, /는 사칙 연산에 사용합니다. % 는 나머지를 구할 때 사용하여 나머지 연산자라고 부릅니다. **는 지수 연산을 수행합니다. //는 Floor Division으로 소수점 이하 자릿수를 제거한 몫을 구하는 연산입니다. 예제 코드와 결과를 살펴보세요. 산술 연산자 연산자 설명 + 덧셈 - 뺄셈 * 곱셈 / 나눗셈 // 나눗셈의 몫 % 모듈로 (나눗셈의 나머지) ** 지수 연산자 +var ..

파이선 변수. 리얼파이선 5

앞에서 변수, 연산, 제어, 함수에 대해 설명했습니다. 본론으로 들어가 변수에 대해서 배워보겠습니다. 변수란 어떤 프로그램에서 사용하는 특정한 내용물(값)을 담는 그릇입니다. 프로그램이 실행하는 동안 유지되기도 하고 중간에 사라지기도 하고, 내용물(값)이 바뀌기도 하고, 다른 데이터 타입으로 변경되기도 하고, 값이 이동하고, 카피되고, 업데이트되고, 증가되고, 감소되는 등 어떤 형태의 값이든 상관없이 일정 시간 동안 보관하는 기능을 합니다. 파이선 변수. 리얼파이선 5 변수란, "변할 수 있는 수"를 뜻합니다. "變(변할 변)"과 "數(셀 수)" 한자를 사용하고 영어로는 Variable인데, 사전적으로 "어떤 관계나 범위 안에서 여러 가지 값으로 임의로 변할 수 있는 수"를 의미합니다. 여기서 "변할 수..

파이선의 간략한 소개. 리얼파이선 4

이번 포스팅에서는 파이선에 대한 전반적인 소개입니다. 꼼꼼히 봐야 합니다. 파이선을 배우면서 나오는 꼭 잊지 말아야 할 용어와 프로그래밍 스타일을 설명합니다. 단순한 내용이지만 파이선 언어를 공부하기 위해서는 필수적인 내용입니다. 다음에 나올 예에서, 입력과 출력은 프롬프트(>>> 와 …)의 존재 여부로 구분됩니다: 예제를 실행하기 위해서는 프롬프트가 나올 때 프롬프트 뒤에 오는 모든 것들을 입력해야 합니다; 프롬프트로 시작하지 않는 줄들은 인터프리터가 출력하는 것들입니다. 예에서 보조 프롬프트 외에 아무것도 없는 줄은 빈 줄을 입력해야 한다는 뜻임에 주의하세요; 여러 줄로 구성된 명령을 끝내는 방법입니다. 이 설명서에 나오는 많은 예는 (대화형 프롬프트에서 입력되는 것들조차도) 주석을 포함하고 있습니다..

반응형