728x90 반응형 Python73 4. Python - time 모듈 이번 포스팅에서는 Python의 time 모듈에 대해 작성하려고 한다. 이 모듈은 datetime 모듈과 달리, time.py 파일이 존재하지 않는다. 무슨 말이냐면, 이 time 모듈은 Python이 아니라, 다른 언어로 작성되어 있다는 말이다. 그래서인지, 프로그래밍을 진행하다보면, datetime 모듈에 비해서 자주 사용하는 기능이 그닥 많지는 않다. 그리고, datetime 모듈과 유사한 기능을 가지는 함수도 있지만 약간 차이가 존재하기도 한다. 지금부터 자주 사용하는 time 내 모듈에 대해 하나식 알아보자. 1. time() 함수 time 모듈 내의 time() 함수는 현재의 시간을 표현한다는 점에서 datetime.now() 또는 datetime.today()와 유사하다. 하지만 표현 방식이.. 2020. 6. 8. 3. Python - datetime 모듈 이번 포스팅부터, Python의 표준 라이브러리의 자주 사용하는 기능들에 대해 하나씩 알아보려 한다. 그 중 첫 번째로 소개할 라이브러리는, Python에서 날짜와 시간을 출력하도록 만들어주는 datetime.py다. 모든 Python의 내장 라이브러리는 Python 폴더의 Lib 폴더에 저장되어 있다. 그리고 이 폴더 내에 datetime.py 문서를 에디터로 열어보면, 아래와 같이 datetime.py 내에 정의되어 있는 날짜/시간 관련 변수, 함수 및 클래스들을 확인할 수 있다. ** 에디터로 파일을 열면, 내용이 많아 어떤 함수와 클래스가 존재하는지 한 눈에 파악하기가 힘들다. 따라서, Python의 인터렉티브 모드로 진입하여, datetime 파일을 import 하고 dir(datetime)을 .. 2020. 6. 6. 2. Python - pip를 이용한 외부 패키지 설치, 삭제 Python에는 특수한 목적으로 사용할 수 있는 python 파일이 있다. 이전 포스팅에서 예시로 들었던 난수 생성 파일이나, 아니면 현재의 날짜와 시간 출력에 사용하는 datetime.py라는 파일도 존재한다. 이렇게 특정 목적을 위해 만들어진 파이썬 파일이나 파일이 들어있는 폴더를 표준 라이브러리라고 한다. 이 표준 라이브러리는 파이썬 설치 시, 자동으로 내장되는 것도 있지만, 파이썬 출시 이후 생성된 표준 라이브러리나 누군가가 만든 패키지를 인터넷에서 다운받아 사용할 수도 있다. 인터넷에서 표준 라이브러리나, 기타 타 사용자가 제작한 패키지를 다운받을 때 사용하는 Python 전용 툴이 존재하는데, 이를 pip, Python Install Package라고 한다. 2020년 6월 현재 다운받을 수 .. 2020. 6. 4. 1. Python - 패키지?? 표준 라이브러리?? Python 프로그래밍의 기본을 슬슬 땔 때 쯤이면, 아마 패키지와 표준 라이브러리라는 말을 슬슬 접하게 될 것이다. 필자는 사실, 처음 이 용어들을 들었을 때, 둘 사이 무슨 차이가 있는 것인지 이해를 하지 못했다(필자는 컴퓨터 관련 전공을 하지 않은 사람이다). 그렇다고 이해하지 않고 계속 Python 프로그래밍을 공부하려니, 혼란만 가중된다. 아마 필자와 같은 절차를 겪고 계신 분들이 적지는 않을 듯 하니(특히 독학이라면), 오늘은 Python의 패키지와 표준 라이브러리에 대해 정의를 하고 넘어가려 한다. 1. 패키지 필자의 Python 포스팅 중 import / from... import를 사용하여 다른 python 파일의 함수와 변수를 호출하는 방법을 보신 분들이라면, 조금 이해가 쉬울 수 있다.. 2020. 6. 3. 21. Python - 코드 예외 처리(try, except, else, finally 문) Python의 기본적인 사용을 위해 알아야 할 그 마지막. 코드 예외처리에 대해 포스팅하려고 한다. 지금까지 기본적인 Python 코드에 대해 학습하면서, 어떤 분들은 스스로 자그만한 프로그램이라도 한 두 개씩은 만들어 보았을 것이다. 그리고 이 프로그램들을 스스로 제작하면서 적어도 100개 이상의 코드 에러를 경험했을 것이다(그렇지 않다면 프로그래밍에 두각을 나타내는 천재거나 연습을 안했다던가 두 가지 중 하나다). 물론, 이런 에러가 프로그래머의 실수로 인해 나타나는 경우가 대부분이지만, 프로그램머가 의도하지 않았음에도 필연적으로 이런 오류를 맞닥들이는 상황이 발생한다. 예를 들면 아래와 같은 경우다. -------------------------------------------------------.. 2020. 5. 22. 20. Python - 파일 읽기, 쓰기 및 추가 대부분의 프로그램은 프로그램 구동에 필요한 파일을 가지고 있다. 예를 들어, 게임 프로그램의 경우 특정 시점에 저장된 파일을 불러들이는 기능이 있는데, 프로그램에서 저장 당시 게임의 내용을 고스란히 기억할 수 있는 파일이 존재해야 한다. 해당 시점에 게임을 저장하기 위해서는 저장 당시의 게임 내용을 저장할 파일에 쓸 수 있어야 하며, 이 게임을 불러들이기 위해서는 저장된 파일을 읽어들일 수 있어야 한다. 대부분의 프로그래밍 언어는 이러한 파일의 읽기 및 쓰기 기능을 제공한다. 그리고 Python은 여타 프로그램에 비해 매우 간편한 방식으로 파일을 읽고 쓰고 내용을 추가하는 것이 가능하다. 하나씩 살펴보자. 1. 파일의 읽기, 쓰기, 내용 추가 절차 파일을 읽거나 쓰거나, 내용 추가를 하기 전에, Pyth.. 2020. 5. 17. 19. Python - 다른 Python 파일의 함수, 변수를 호출하기 메모장이나, 기타 편집 프로그램을 이용해 Python 코드를 작성하여 프로그램을 몇 개 만들다 보면, 각자 자주 사용하는 코드가 하나 둘씩 나타날 것이다. 필자의 경우에는, 프로그램 내에서 어떤 작업을 진행할 것인지 말것인지에 대해 물어보고 사용자의 응답에 따라 서로 다른 작업이 진행되도록 하는 코드를 자주 작성한다. 예를 들면 아래와 같은 것. ---------------------------------------------- print("계속 하시겠습니까?, end =="") answer = input("").lower() if(answer == 'y'): print("continue") else(answer == 'n') print("return") ---------------------------.. 2020. 5. 3. 18. Python - Python Class에 대하여 오늘 포스팅할 주제인 Class는 전략 시뮬레이션 게임을 해보셨던 분들이라면 이해가 조금 빠를 것이다. 이 클래스라는 개념은 객체를 다루기 위해 사용하는 문법이며, 클래스를 사용하기 위한 예시로 들기 가장 좋은 예는 20년 전에 대유행을 했던 스타크**트라는 게임이다(물론, Age of Empire와 같이 유닛이 나오는 유사 게임도 마찬가지다) 조금, 조악하지만, 텍스트 형태로 스타크**트를 만들어보려 한다고 해보자. 필자는 우선 SCV 4마리(?)를 먼저 생성하려고 한다. SCV1 = "SCV1" SCV2 = "SCV2" SCV3 = "SCV3" SCV4 = "SCV4" 그리고, 이들 SCV가 이동하거나, 건설하거나, 광물을 채취할 수 있는 등의 행동을 제어할 수 있는 함수를 만들려고 한다. def m.. 2020. 4. 15. 17. Python - Python 함수의 입력값(인자) 수를 동적으로 정의하기 앞선 포스팅에서, 함수가 무엇이며, 함수의 형태가 대략적으로 어떤 모양을 띄고 있는지 알아보았다. 함수는 입력값 입력, 이에 따른 연산 진행 및 출력값 반환이라는 3 단계의 프로세스를 가지는 것이 일반적이다. 이번 포스팅에서 설명할 내용은, 함수의 입력값에 해당하는 함수의 인자에 관한 이야기다. 앞의 포스팅에서도 예시로 든 것이지만, 덧셈을 실행하는 함수를 제작하려면, 당연히 2개 이상의 피연산값이 함수의 인자로 들어와야 한다. 따라서 덧셈을 진행하는 함수는 일반적으로 다음과 같은 형태를 띈다. ---------------------------------------------- def sum(a, b): return a + b -------------------------------------------.. 2020. 3. 17. 16. Python - Python 함수의 종류 및 사용 예시 함수는, 입력받은 특정 값을 함수 내에 정의된 연산을 통해 일관된 결과값으로 돌려주는 기능을 한다. 아마 정규 교육과정을 무사히 거치신 분들이라면, 수학 시간에 이런 형태의 수식을 많이 보았을 것이다. f(x) = x + 1 이 말은 f(x) 함수는 입력되는 숫자(x)에 1을 더해서 결과를 반환한다는 뜻이다. 즉, f(2)의 결과는 2+1인 3이되고, f(99)는 99+1인 100이 된다. 수식으로 나타내면 아래와 같이 될 것이다. f(2) = 3 f(99) = 100 컴퓨터의 함수도 수학의 함수와 별반 다를 것이 없다. 하지만 프로그래밍을 하다보면, 함수의 사용 목적에 따라 함수의 종류가 몇 가지로 나누어짐을 알 수 있다(물론 공식적으로 Python에서 함수의 종류에 대해 명시하지는 않지만...). 함.. 2020. 3. 1. 15. Python - Python 함수 사용 이유, 선언 및 호출 Python으로 어떤 절차를 고스란히 수행하는 프로그램을 만든다고 가정해보자. 예를 들면, "강아지의 하루"라는 이름의 게임을 제작한다던지 말이다. 강아지가 아침에 일어난다. 일어나는 과정을 나열하면 다음과 같을 것이다. 1. 아침이 밝았다. 2. 햇살이 강아지를 비춘다. 3. 강아지가 밝아진 주변을 인식하고 눈을 뜬다. 4. 기지개를 편다. 일어나보니, 배가 고프다. 밥을 먹는 과정은 아래와 같을 것이다. 1. 밥 주는 놈이 자고 있는가? 1-1. Yes: 침대위로 올라가 이놈의 뺨을 사정없이 핥핥(?)하는 동시에 "왈왈" 짖는다. 1-2. No : 이놈을 빤히 쳐다본다. 이놈이 나의 배고픔을 인지했는가? 1-2-1. Yes: 이놈이 밥을 준다. 1-2-2. No: 이놈을 보고 입을 열어 왈왈 짖으면서.. 2020. 2. 7. 14. Python - input() 함수로 필요한 정보를 입력해보자. 지금까지 작성해왔던 python 코드의 대부분은, 외부에서 입력된 값을 토대로 프로그램이 작동하는 것이 아니라, 코드 내의 변수값을 참조하여 작동하는 것이 전부였다. 예를 들어, 구구단 같은 경우, 코드 내에서 단에 해당하는 변수인 dan의 값을 지정해주어야만, 프로그램이 해당 단을 출력해주었다. 2단부터 9단까지 순차적으로 출력을 진행해주는 프로그램이 존재한다고 가정해보자. 필자는 이 프로그램을 통해, 3단에 해당하는 구구단만 검색하고 싶은데, 이 프로그램은 필자의 마음을 1도 알아주지 않고, 2단부터 9단까지 모든 정보를 출력해준다. 구구단 프로그램이 사용자가 조회하기를 원하는 단의 숫자를 입력하면, 그 숫자에 해당하는 단만 출력하도록 만들 수는 없는 것일까? 물론 가능하다. input()이라는 함수.. 2019. 10. 19. 이전 1 2 3 4 5 6 7 다음 728x90 반응형