Python 17

파이썬 생존 안내서 내용 요약

파이썬 생존 안내서 (자막) from 흥섭 이 인터넷에 '파이썬 생존 안내서' 라는 파이썬을 접하기에 매우 좋은 슬라이드가 있어 내용의 극히 일부분만을 발췌하여 올립니다. 내용 요약에 포함되지 않은 유익한 내용들도 매우 많기 때문에 읽어보는 것을 권합니다. * 참고 : 페이지가 700장이 아니라 내용 스크립트 때문에 700 장으로 보이는 것이기 때문에 읽는데 많은 시간이 걸리지 않습니다. 파이썬 생존 안내서 정리 import this class Example(object): passdef example(): return Example() print 'Hello, world' 모듈, 클래스, 메소드 등을 가지고 있으며 메소드 내부가 아니라도 함수 실행이 가능함. for x in numbers: if 2< ..

프로그램/Python 2017.03.25

[Python Challenge] 파이썬 챌린지 - 7

페이지에 들어가면 또 불친절하게 사진 한장만이 덜렁 있다. 강가의 사진을 보여주는데 중간헤 회색 바로 색깔이 변하는 것을 알 수 있다. 직감적으로 이미지를 받아 분석하면 답을 얻을 수 있다고 생각이 든다. 이미지를 읽고 편집하기 위해서는 파이썬의 PIL 패키지를 사용하여야 한다. $pip install PIL 을 입력하여 패키지를 설치한다. urllib을 이용하여 사진을 다운로드 받는다. 중간에 회색들을 읽기 위하여 대략적인 수도 코드를 구상해보자. 사진 불러오기 -> 세로를 검색하며 처음 회색인 픽셀 찾기 -> 가로로 픽셀들을 읽어 색깔이 달라지는 경우를 포착하여 가로값 읽기-> 회색이 아닌 픽셀이 아닐 때까지 읽어 값을 리스트로 정리하기 -> 데이터 분석 회색 값들을 읽기 위한 사각형의 위치를 알기 ..

프로그램/Python 2017.03.18

[Python Challenge] 파이썬 챌린지 - 6

처음 들어가게 되면 웹 페이지 제목에 "now there are pairs"라고 적혀있으며, 그림에 검은 바지에 지퍼가 반쯤 열려 있는 것을 볼 수 있다. 좀 더 자세한 힌트를 보기 위해서 페이지 소스를 보자. 소스에 주석으로 zip이라고 되어 있음을 알 수 있다. 예측컨데 제목의 힌트로 이제 "쌍"으로 존재하고 주석에 zip이라고 되어 있는 것을 보아 같은 페이지 이름을 가진 zip파일이 있음을 예상할 수 있다. channel.zip 파일을 받아 압축을 풀어주면 많은 숫자 텍스트 파일과 readme.txt가 있는 것을 볼 수 있다. readme.txt의 내용은 다음과 같다. welcome to my zipped list. hint1: start from 90052hint2: answer is insid..

프로그램/Python 2017.03.08

[Python Challenge] 파이썬 챌린지 - 5

이전 문제들과 마찬가지로 문제에 들어가면 딸랑 사진 한장이 있는 것을 볼 수 있다. 힌트는 "발음해 보아라...?" 라고 적혀 있다. 조금 더 힌트를 보기 위하여 F12를 눌러(크롬 기준) 소스 코드를 보도록 하자. 소스 코드를 보면 위 사진이 peakhell 인 것을 볼 수 있으며 소스로 "banner.p"파일이 제공 되는 것을 알 수 있다. (언덕은 hill 인데... 왜 hell이라고 되어 있는지 당최 알 길이 없다... 조금더 발음이 비슷한 것을 찾기 위함인 걸까??) peakhell의 발음이 비슷한 것을 찾으라는 힌트가 주어졌다. 마침 파이썬에서 pickle이라는 리스트, 튜플, 사전 등의 타입을 파일로 내보내는 패키지가 있다고 한다.(라고 공략이 말했다.) urllib을 이용하여 banner...

프로그램/Python 2017.03.07

[Python Challenge] 파이썬 챌린지 - 4

??!! 처음 페이지에 들어가면 단순하게 linkedlist.php만 뜨게 된다.. linkedlist.php에 들어가면 아래와 같은 그림이 뜨고 그림을 클릭하게 되면 http://www.pythonchallenge.com/pc/def/linkedlist.php?nothing=12345 와 같은 주소를 얻을 수 있고 그 내용은 다음과 같다. "and the next nothing is 44827" 다음 주소로 가서 다음 스테이지로 가는 값을 자동적으로 알기 위해서는 urllib을 활용해야 쉽게 할 수 있다. 수도 코드는 다음과 같다.1. urllib을 이용하여 주소에 접근한다.2. re라이브러리를 이용하여 숫자를 찾아낸다. 3. 간단한 string 구문을 이용하여 새로운 url을 찾아낸다. 4. 다음 해..

프로그램/Python 2017.02.27

[Python Challenge] 파이썬 챌린지 - 3

이전과 마찬가지인 regular expression 문제임을 예측 할 수 있다. 이전 문제와 마찬가지로 F12(크롬 기준)을 누르면 소스를 볼 수 있으며,어떤 의미인지 알 수 없는 데이터들이 주석처리 되어 있는 것을 볼 수 있다. 힌트에서는 양 옆으로 3개의(정확히 3개의) capital alphabet사이에 있는 소문자 알파벳을 찾으라고 요구하고 있다. 때문에 본 문제의 정규 표현식에는 "!대문자 - 3*대문자 - 소문자 - 3*대문자 - !대문자" 의 패턴을 찾아야 한다. 코딩은 다음과 같이 할 수 있다. 위의 코드를 실행 시키면 linkedlist를 얻을 수 있다. 정규 표현식에 대하여 좀 더 알고 싶다면 아래의 강좌를 보면 쉽게 이해할 수 있을 것이다. http://blog.eairship.kr/..

프로그램/Python 2017.02.27

[Python Challenge] 파이썬 챌린지 - 2

http://www.pythonchallenge.com/pc/def/ocr.html 힌트로 "recognize the characters. maybe they are in the book, but MAYBE they are in the page source."와 같은 메시지가 주어져 있다. 페이지 소스를 보기 위하여 (크롬 기준) F12를 눌러 소스를 본다. 아래의 string 중 rare character들을 찾으라고 한다. 일반적으로 문자열을 거르는 방법은 regular expression을 사용하기 때문에 re 패키지를 사용한다. 소스는 다음와 같이 작성하면 결과로 equality가 나오게 된다.

프로그램/Python 2017.02.26