파이썬 60

파이썬(python) #4_ 문자열 포매팅

안녕하세요. 오늘은 파이썬에서 문자열 포매팅에 대해서 알아보도록 하겠습니다.특정한 값이나 변수등을 문자열에 입력하거나 문자열이 변수에 값에 의해 바뀌어야 하는 등의 상황에서 유용하게 사용될 수 있습니다.1. 문자열 포매팅 먼저 아래와 같은 상황이 있다고 생각해봅시다. 근데 만약, a라는 변수의 값을 5로 바꾼다면? 그럼 b의 문장, "변수 a의 값은 3입니다."라는 문장은 틀리게 됩니다.그럼 b의 문장이 참이 되도록, 문장에서 특정한 값을 바꾸게 하는 방법은 무엇이 있을까요?바로 문자열 포매팅입니다.문자열 포매팅이란 문자열안에 특정한 값을 삽입하는 방법을 말합니다.문자열 포매팅에는 숫자를 대입하거나 문자열을 대입하는 등 다양한 방법이 있습니다.하나씩 알아보도록 할게요. 1-1. 숫자 바로 대입하기 위의 ..

알고리즘 #4_ 파이썬을 통한 막대자르기(Rod cut) 시간비교

지난 포스팅에서 동적 프로그래밍(Dynamic Programming)에 대해서 알아보고 그에 대한 예제로 막대자르기(Rod Cut)에 대해서 공부하였습니다.이번 포스트에서는 막대자르기 예제에서 단순 하향식 재귀표현법과 상향식 방법을 실제로 python코드로 작성해보고 시간을 비교해보도록 하겠습니다.1. 개요 먼저 이번 포스팅에서 진행할 막대자르기문제에 대한 몇 가지 조건은 아래와 같습니다. ㄱ. P-table(price table)의 값은 임의의 단조증가 형태ㄴ. Rod의 길이 값을 4부터 N으로 변화시키면서 Brute-force방법(하향식 재귀 표현)과 DP방법(상향식 방법)으로 최적의 값과 해결 소요 시간을 비교ㄷ. 소요 시간 비교는 최종적으로 표와 그래프를 이용하여 시각적으로 표현 위의 조건들을 가..

파이썬(python) #3_ 문자열 인덱싱과 슬라이싱

안녕하세요. 오늘은 파이썬에서 문자열 인덱싱(indexing)과 슬라이싱(slicing)에 대해서 알아보겠습니다.궁금하시거나 오류에 부딪히신 분은 언제든 댓글에 남겨주시면 최대한 답변드리겠습니다 :) 1. 문자열 인덱싱(Indexing) 인덱싱이란 말이 뭘까요?인덱싱이라는 것은 무엇인가를 '가리킨다'는 의미입니다.다시 말해서 긴 문자열에서 어떤 글자나 특정 위치를 가리키는 것을 말합니다. 위의 사진과 같이 a에 저장된 'Hello, python world!!'라는 문자열에서 각 문자마다 번호를 매겨 보겠습니다. H e l l o , p y t h o n w o r l d ! ! 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 처음 시작하는 글자 H를 0이라는..

파이썬(python) #2_ 파이썬의 숫자형과 문자열 자료형

안녕하세요.지난 포스팅에 이어서, 이번엔 파이썬의 숫자형과 문자열 자료형에 대해서 알아보겠습니다.참고 서적은 박응용씨의 '점프 투 파이썬'입니다.또한 이번 포스팅부터 실습을 진행할텐데제가 사용하는 파이썬 버전은 Python 3.6.2 이며 에디터는 서브라임텍스트3를 사용합니다.1. 숫자형 숫자형이란 말 그대로 숫자로 된 자료형을 말합니다. 숫자에는 어떤 것들이 있을까요? 잘 아시다시피 정수, 실수, 복소수 그리고 8진수와 16진수 등이 있습니다.C 언어를 예를 들면 정수형을 표현하는데 Int형을 사용하죠. 파이썬과의 차이점을 보자면, C언어의 Int형은 대략 +21억~-21억의 범위를 가집니다. 하지만 파이썬에서는 숫자형의 범위가 존재하지 않습니다. 그럼 숫자형에서 각각의 숫자들은 어떤식으로 사용이 될까..

파이썬(python) #1_ 파이썬이란 무엇인가?

안녕하세요. 문범우입니다.최근 파이썬(python)을 이용해서 다양한 웹 프레임 워크도 공부하고, 학교에서 진행하는 이론적인 내용들을 실습할 때 파이썬으로 코드를 작성하다 보니 기초에 대한 부족함이 느껴지네요.그래서 처음 파이썬 시작할때 샀던 책을 아예 처음부터 제대로 정독해보기로 마음먹었습니다.책은 박응용님께서 지으신 '점프 투 파이썬'이란 책입니다.해당 책은 WikiDocs에 오픈되어 있으니 여기를 클릭하셔서 온라인으로도 보실 수 있습니다.포스팅은 시간날때마다 공부하고 정리하는 느낌으로 진행할 예정이고 책에서 공부한 내용들을 바탕으로 응용한 예제까지 더해서 코드를 정리하려 합니다.궁금하신 점이나 기타 의문사항은 댓글 및 이메일(doorbw@outlook.com)으로 연락주시면 감사하겠습니다. :) 1..

Tornado (Python web server) #4_ Authentication and security: Cookies and secure cookies

안녕하세요.오늘은 Tornado web framework를 이용한 Authentication and security를 알아보도록 하겠습니다.공식문서를 확인하시면 'Authentication and security' 을 주제로한 몇가지 예제가 나와있습니다.오늘은 그 중 첫번째인 Cookies and secure cookies 에 대해 공부해보겠습니다.직접적으로 Tornado를 이용하기에 앞서서 먼저 cookie라는 것에 대해 알아볼게요. 1. 쿠키(cookie)란?쿠키란 특정 웹서버에 대한 접근 정보를 담고 있는 것 입니다.많은 분들께서 웹브라우저를 이용하시면서 특정 웹사이트가 로그인 정보를 기억한 경험이 있을거에요. 한번 로그인한 웹사이트를 다음에 접속할때는 따로 ID와 password를 입력하지 않아도..

Web 관련/Tornado 2017.10.22

Tornado (Python web server) #3_Using Template(템플릿 사용하기)

Tornado (python web server) 관련 3번째 포스팅입니다. 이번 포스팅에서 다뤄볼 내용은 토네이도에서 템플릿 사용하기(Using template in Tornado) 입니다.바로 시작해보도록 하겠습니다.Tornado 에서는 python에서 사용할 수 있는 어떠한 템플릿 언어도 사용할 수 있습니다.Tornado는 다른 템플릿 언어들에 비해 매우 빠르고 유연한 템플릿 언어를 기본적으로 포함하고 있다고 합니다.자세한 내용은 Tornado의 template 모듈 문서를 참조하시면 됩니다.( http://www.tornadoweb.org/en/stable/_modules/tornado/template.html?highlight=template ) Tornado 템플릿은 마크업 언어 내에 pyth..

Web 관련/Tornado 2017.10.17

Tornado (Python web server) #1_토네이도 설치 및 시작 테스트

최근 특정 일로 인해 Tornado 공부를 시작하게 되었습니다.Tornado는 python언어를 이용한 web server 입니다.python 언어를 이용한 web server로는 가장 이용자가 많은(특히 한국에서) web server라고 하네요! Tornado를 공부하는데 있어서는 공식문서를 주로 다루도록 하고구글링 또한 함께.. 열심히 하면서 노력해보겠습니다. 먼저 그 시작은 간단하게 Tornado를 설치하고화면에 "Hello world"를 띄어보도록 할게요! Tornado 공식문서는 아래 링크를 참고해주세요!http://www.tornadoweb.org/en/stable/ 1. Tornado 설치하기기본적으로 python은 모두 설치 되어있음을 가정하고 진행합니다.저의 python 설치 환경은 아래..

Web 관련/Tornado 2017.10.15

알고리즘 #2_Einstein's puzzle(아인슈타인 퍼즐)_[Python을 이용한 CSP algorithm]

안녕하세요.이번에는 python을 이용한 CSP algorithm 중 하나인 Einstein's puzzle(아인슈타인 퍼즐) 해결 코드를 작성해 보겠습니다. 먼저 아인슈타인 퍼즐에 대해 소개해 드릴게요.아인슈타인의 퍼즐은 아래와 같은 문제입니다. * 문제의 배경1. 색깔이 서로 다른 5채의 집이 일렬로 지어져 있다.2. 각 집에는 서로 다른 국적의 사람이 살고 있다.3. 다섯 사람은 서로 다른 음료를 마시고, 서로 다른 담배를 피며, 서로 다른 동물을 기른다. * 15개의 정보1. 영국인은 빨간 집에서 산다.2. 스웨덴인은 개를 기른다.3. 덴마크인은 차를 마신다.4. 초록집은 하얀집의 왼쪽 집이다.5. 초록집에 사는 사람은 커피를 마신다.6. 펠몰 담배를 피는 사람은 새를 기른다.7. 노란집에 사는 ..

알고리즘 #1_Missionaries and cannibals problem(선교사와 식인종 문제)_[python을 통한 DFS Algorithm]

많은 사람들에게 유명한 missionaries and cannibals problem (선교사와 식인종 문제) 강의 왼쪽에 선교사 3명과 식인종 3명이 있고 모두를 강 오른쪽으로 건너게끔 해야한다. 1. 강의 왼쪽이나 오른쪽에서 선교사의 수보다 식인종의 수가 많으면 안된다. 2. 보트에는 최대 2명이 탑승할 수 있으며 최소1명이 탑승해야 움직일 수 있다. 학교 AI시간에 각 state와 action에 대해서 제출하라는 과제가 있었는데 그것을 통해 DFS algorithm을 응용하여 python으로 구현해보았다. 분명히 잘못된 부분이나 부족한 부분이 있을 것 같은데 일단 포스팅을 진행하고 천천히 더 공부해야 겠다. 123456789101112131415161718192021222324252627282930..

728x90