본문 바로가기

전체 글

(180)
PY4E - Chapter 13 Web Service XML (1) Part 1 1. 소켓의 개념은 하나의 어플리케이션 프로세스로부터 다른 어플리케이션 프로세스로 데이터를 보내는 것이다. 2. 특정 언어에 구애받지 않는 프로토콜을 정하고 난 뒤 그 와이어 프로토콜을 불러와야 한다. 3. 연결을 통해서 실제 문자를 주고 받는 과정을 보려고 한다면 그것이 바로 여러분이 와이어를 모니터 할 때 보게 되는 것이기 때문이다. 4. 데이터 표현 형식을 서로 맞추기 위해, 파이썬의 딕셔너리를 와이어 데이터로 바꾸는 것을 직렬화(Serialize)라고 한다. 5. 즉, 내부표현을 직렬표현 혹은 와이어 표현으로 보내는 것이 직렬화이다. 6. 와이어 표현을 해당 언어의 내부 표현으로 바꾸는 것을 Deserialize라고 한다. 7. JSON은 JAVASCRIPT OBJECT NOTION이..
PY4E - Chapter 12 Unicode and UTF-8 in Python (3) 1. 웹스크리핑은 웹으로부터 링크를 추출하고 추출한 링크들을 차례로 처리하는 작업 2. 수집된 데이터는 다양한 용도로 사용이 가능하다. 3. 다만 모든 웹사이트가 로봇에 의해서 스크래핑을 당하고 싶은 것은 아니다. 4. 몇몇 웹사이트는 로그인을 하게 하여, 기록을 남게 하기도 하며, 계정을 닫아버리기도 한다. 5. 로그인을 안하더라도, 주소를 닫아버릴 수도 있다. 6. HTML 파싱은 어렵다. 7. 실제 웹에는 깨진 HTML이 많다. 8. 뷰티풀수프(BeautifulSoup)는 한마디로, 웹에서 일어날 수 있는 다양한 문제들에 대한 해결책을 모아 놓은 것이다. 9. 사용하기 매우 쉽다. 10. HTML 주면 태그 줄게! 11. 그냥 주소 건내주면, 받아온 HTML 문서 상에서 잘못된 부분이 있나 확인한다..
PY4E - Chapter 12 Unicode and UTF-8 in Python (2) 1.ASCII : American Standard Code for information interchange 2. 아주 가벼운 문자. 128가지 3. 8비트, 1바이트 4. 파이썬에서 ord()를 쓰면 숫자 값을 알 수 있음 5. 시대가 복잡해지고, 사용하는 문자가 많아졌다. 아식의 한계 도달. 6. 괴장히 복잡, 무거운 유니코드까지 발전. 엄청나게 넓은 공간을 가지고 있다. 어떤 문자라도 저장이 가능하다. 7. 다만 문제는 유니코드를 네트워크로 전송할 때 용량이 과도하게 크다는 것이다. 8. UTF32는 유니코드와 거의 같으며, UTF16은 압축형이다. 9. UTF8은 1~4 바이트로 동적 변경이 가능하다. 10. UTF8이 짱이다. 굉장히 멋있다. 11. 파이썬 3의 가장 큰 특징은 문자열을 유니코드..
PY4E - Chapter 12 Unicode and UTF-8 in Python (1) Part 1 1. 인터넷 네트워크를 알기 위해서는 계층 구조에 대해 알아야 합니다. 2 기본적으로 서버와 나의 컴퓨터 간의 정보이동이라고 생각하면 되고 각 이동시 하위 계층에서 패킷화 과정이 15-20회 정도 일어난다. 3. 둘 사이의 어떤 연결이 있고, 그 연결을 소켓(Socket)이라고 부른다. 4. 한 컴퓨터에서 프로그램이 실행되면 다른 컴퓨터에서 프로세스가 진행되어 응답을 줍니다. 5. 한 컴퓨터가 소켓에 이야기 하면, 소켓을 통해 다른 컴퓨터가 응답합니다. 이를 데이터의 양방향 통신이라고 합니다. 6. 데이터 전화기가 소켓입니다. 7. 어떤 시스템에 말을 걸 것인지, 어떤 서비스, 어떤 프로세스에 접근할 것인지를 포트 번호라고 부릅니다. 8. 소켓만 임포트를 해주면, 포트에 접근하기 쉽습니다. ..
PY4E: Chapter 11 Regular Expressions PY4E - Regular Expressions (Chapter 11 Part 1) part 1 1. 정규식은 하나의 작은 프로그래밍언어다. 2. 정규식은 조금 더 똑똑하게 검색해보려는 시도다. 3. 정규식은 프로그래밍 가능한 와일드 카드다. 4. 정규식은 함축된 언어로 찾고자 하는 패턴과 매치되는 문자열을 찾아준다. 5. 정규식은 문자를 기준으로 작동한다. 6. 몇가지 유효한 문자가 있는데 특별한 의미를 가지고 있는 문자다. 7. 정규식은 파이썬의 일부가 아니지만, 파이썬과 함께 쓰인다. 8. 그렇기 때문에 import re를 해서 가져와야 한다. 9. re.search는 매개변수를 받아 문자열 내에서 검색하는 함수다. 10. re.findall 은 문자를 순회하면서 정해진 패턴을 만족하면 추출하는 함..
[JOMA TECH : Don't Be A Programmer] 프로그래머가 되지 말아야지. https://youtu.be/EiKK04Ht8QI 프로그래머인 사람이, 프로그래머가 되지 말라고하니 아이러니하게 들릴 수 있지만. 그의 충고는 명확하다. 나도 이제 파이썬을 시작으로 걸음마를 때고 있는 한 사람으로서 스스로에게 묻는다. 프로그래밍 언어를 잘 다루는 사람이 프로그래머일까? 데이터 과학자일까? 분석가일까? 아니다. 도구를 다루는 사람은 그냥 또 다른 누군가의 도구일 뿐이다. 그저 필요한 것이 아니라 좋아서 내가 하고 싶은 일을 하기 위해서 하다보면 자연스럽게 얻어지는 것들이 그런 기술적인 부분들 일 것이다. 그의 말처럼 나는 프로그래머가 아닌, 문제를 푸는 사람이 되어야 한다. 그렇지 않으면, 나는 도구로 남을 뿐이며 남을 도구로 사용할 뿐이다. 식물 분류학자가 되기 위해 공부하고 있던 작..
PY4E: Chapter 10 Tuples Chapter 10 Part 1 1. 튜플은 제한된 리스트입니다.. 2. 튜플은 소괄호()를 사용하며, 리스트는 대괄호[]를 사용합니다. 3. 튜플은 변경이 불가능합니다. 오직 정렬(allignment)만이 가능합니다. 4. x[a] = b라고 쓰는 것을 파이썬에서는 아이템 할당이라고 합니다. 5. 튜플과 스트링은 비슷합니다. 스트링에서와 마찬가지로 아이템 변경이 불가능합니다. 6. 튜플을 사용하는 이유는 효율성 때문입니다. 용량이 적으며, 접근이 보다 빠릅니다. 7. 그저 값을 저장/접근만 할 것이라면 리스트보다 튜플이 효율적입니다. 8. 리스트에서는 되고 튜플에서는 되지 않는 것들은 결국 튜플의 제한된 특성 때문입니다. 9. 튜플에서는 sort, append, reverse 모두 불가능합니다. 10...
PY4E: Chapter 9 Dictionaries Chapter 9, Part 1 1. 프로그래머들이 파이썬에서 가장 좋아하는 부분이 바로 콜렉션(Collection)이다. 2. 딕셔너리는 인메모리 데이터베이스(in memory database)와 같다. 3. 콜랙션은 여러개의 정보를 저장하는 것이다. 4. 리스트는 컬렉션의 일종이며 순서가 있다. 리스트이 구조는 감자칩이나 프링글스와 비슷하다. 5. 딕셔너리 안에는 순서가 없다. 하지만 키를 기반으로 꺼낼 수 있다. 키-벨류 형식이다. 6. 딕셔너리는 지갑과 같다. 던져 놓은 모든 것에 레이블이 있다. 7. 딕셔너리는 연관 배열(Associative Arrays)이다 . 즉 키가 의미하는 것은 키와 값은 연결 관계이다. 7. 반면 리스트에는 위치가 있으며, 그 관계가 비교적 덜 강력하고, 덜 유연하다...