파이썬

    (파이썬/python) 모두를 위한 프로그래밍 : 파이썬 챕터 13 / 웹 서비스

    XML XML은 eXtensible Markup Language의 약자로, 다음과 같은 계층 구조로 이루어져 있습니다. HTML과 비슷하지만 원하는 이름의 태그를 만들 수 있다는 특징이 있고, HTML 보다 문법 오류를 더 엄격하게 다룹니다. 다음과 같은 함수를 활용하면 XML에 접근해 원하는 데이터를 추출할 수 있습니다. 조금 더 복잡하지만 XML의 구조를 이해하고 있으면 다음과 같이 반복문을 활용해 XML의 데이터에 접근할 수도 있습니다. Chuck +1 734 303 4456 tree = ET.fromstring(data) print('Name:',tree.find('name').text) print('Attr:'.tree.find('email').get('hide')) #Name: Chuck #A..

    (파이썬/python) 모두를 위한 프로그래밍 : 파이썬 챕터 12 / HTTP

    파이썬에서 소켓 만들기 파이썬에서는 다음과 같은 방법으로 소켓을 굉장히 쉽게 만들 수 있습니다. import socket mysock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) mysock.connect(('data.pr4e.org', 80)) 먼저 socket 모듈을 import하고, 인터넷에 연결되는 소켓을 연속된 문자의 흐름인 스트림 방식으로 만들어줍니다. 그리고 그 소켓에 data.pr4e.org라는 호스트에 80이라는 포트로 연결을 했습니다. 간단한 코드 3줄로 말이죠. 간단한 웹 브라우저 import socket mysock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) mysock.connect(..

    (파이썬/python) 모두를 위한 프로그래밍 : 파이썬 챕터 11 / 정규식

    정규식 간단한 요약 정규 표현식의 규칙에 대해 간단히 요약한 내용입니다. 앞으로 이 내용에 대해 예제와 함께 차근차근 설명을 드리도록 하겠습니다. ^ : 라인의 처음을 매칭 $ : 라인의 끝을 매칭 . : 임의의 문자를 매칭(와일드 카드) ₩s : 공백 문자를 매칭 ₩S : 공백이 아닌 문자를 매칭 * : 바로 앞선 문자에 적용되고 0 혹은 그 이상의 앞선 문자와 매칭을 표기함. *? : 바로 앞선 문자에 적용되고 0 혹은 그 이상의 앞선 문자와 매칭을 탐욕적이지 않은 방식으로 표기함. + : 바로 앞선 문자에 적용되고 1 혹은 그 이상의 앞선 문자와 매칭을 표기함. +? : 바로 앞선 문자에 적용되고 1 혹은 그 이상의 앞선 문자와 매칭을 탐욕적이지 않은 방식으로 표기함. [aeiou] : 명세된 집합..

    (파이썬/python) 모두를 위한 프로그래밍 : 파이썬 챕터 10 / 튜플

    리스트와 비슷한 컬렉션, 튜플 튜플은 리스트와 굉장히 비슷합니다. 리스트와 같이 순서가 있어서 인덱스로 접근이 가능하고 최대값도 찾을 수 있습니다. x = ('Glenn', 'Sally', 'Joseph') print(x[2]) #Joseph y=(1,9,2) print(y) #(1,9,2) print(max(y)) #9 for iter in y: print(iter) #1 #9 #2 변경 불가능한 속성 하지만 리스트와는 달리 튜플은 값을 변경할 수 없다는 특징이 있습니다. 이러한 특성으로 인해 튜플은 리스트보다 훨씬 더 효율적으로 동작합니다. 용량도 적게 차지하고 접근도 빠릅니다. x=[9,8,7] x[2] = 6 print(x) #[9,8,6] x=(9,8,7) x[2] = 6 #TypeError 리..

    (파이썬/python) 모두를 위한 프로그래밍 : 파이썬 챕터 9 / 딕셔너리

    컬렉션 리스트나 딕셔너리 같은 변수를 가지는 상황이며 하나의 정보보다는 여러 개의 정보를 저장할때 사용 리스트 순서대로 정리된 컬렉션. 데이터를 추가하면 항상 리스트의 끝에 추가되고 0부터 n-1번 위치까지 순서대로 n개의 원소가 저장됨 딕셔너리 순서대신 키(key)가 존재함. 물건에 포스트잇으로 라벨을 붙이는 것과 같음. 딕셔너리는 다음과 같이 dict()라는 생성자를 통해 생성할 수 있음. purse = dict() #또는 purse = {} purse['money'] = 12 #'money'라는 키에 12라는 값 연결 purse['candy'] = 3 #'candy'라는 키에 3이라는 값 연결 purse['tissues'] = 75 #'tissues'라는 키에 75라는 값 연결 print(purse..

    (파이썬/python) 모두를 위한 프로그래밍 : 파이썬 챕터 7 / 파일

    텍스트 파일은 무엇인가? 텍스트 파일은 연속적으로 연결되어 있는 줄글들의 집합이라고 생각할 수 있습니다. 우리는 지금까지 많은 텍스트 파일을 만들어 왔습니다. 그럼 텍스트 파일을 열고 처리하는 것과 관련된 몇 가지 함수들을 살펴보도록 하겠습니다. open() 파일을 여는 것은 open() 함수를 이용해 달성할 수 있습니다. open() 함수는 handle을 반환하게 되고 handle은 파일에 대한 작업을 수행하기 위해 사용됩니다. handle은 텍스트가 파일 형태, 메모리에 저장된 문자열의 형태, 웹 사이트에서 존재하는 형태와 같이 다른 방식으로 저장되어 있는 텍스트를 처리하는 하나의 표준화된 방식입니다. 또한, 많은 양의 문자 파일을 한꺼번에 읽어 발생할 수 있는 성능의 문제를 handle은 점진적으로..