" async="async"> ', { cookie_domain: 'auto', cookie_flags: 'max-age=0;domain=.tistory.com', cookie_expires: 7 * 24 * 60 * 60 // 7 days, in seconds }); '게임 프로그래밍/Python' 카테고리의 글 목록

게임 프로그래밍/Python 14

파이썬의 내장 에러 항목들

SyntaxError: 문법 오류가 발생했을 때 발생합니다. 예를 들어, 잘못된 들여쓰기, 괄호 누락, 잘못된 키워드 사용 등이 있습니다. NameError: 로컬 또는 전역 이름 공간에서 이름을 찾을 수 없을 때 발생합니다. 존재하지 않는 변수를 참조할 때 자주 발생합니다. TypeError: 연산이나 함수가 부적절한 타입의 객체에 적용될 때 발생합니다. 예를 들어, 숫자에 대해 문자열 연산을 수행하려고 할 때 발생할 수 있습니다. IndexError: 시퀀스(리스트, 튜플 등)에서 존재하지 않는 인덱스를 참조할 때 발생합니다. KeyError: 딕셔너리에서 존재하지 않는 키를 참조할 때 발생합니다. ValueError: 연산이나 함수가 올바른 타입의 객체에 적용되었지만, 적절하지 않은 값을 가진 경우..

파이썬에서 from을 사용하는 이유는 무엇일까?

from datetime import datetime today = datetime.now() print(today.strftime("%Y-%m-%d")) 위의 코드는 오늘 날짜를 가져오는 코드이다. datetime의 datetime은 now()를 통해 현재 시간을 리턴한다. 그런데 datetime을 사용할 때 from으로 datetime 만 가져오는 이유가 무엇일까? 이런 식으로 from으로 모듈의 일부만 가져오는 이유가 무엇일까? 이유는 다음과 같다. 1. 네임스페이스 관리 모듈 내에는 위의 now와 같이 이름이 사용되는 경우가 많다. 만약 모든 모든 모듈을 통채로 가져올 경우 위와 같이 코드내에 사용하면 겹치는 이름이 다수 생기게 된다. 필요한 부분만 가져오면 이런 부분을 감소시킬 수 있다. 2. ..

파이썬에서 변수를 넣어서 print를 하는 여러가지 방법

print를 할 때 변수를 넣는 방법은 여러가지가 있다. 근데 사람 습관이 무서운게 쓰는 것만 쓴다. 못된 버릇 여든 가는건 생활버릇이나 코딩에서나 똑같은 듯하다. 습관을 바꾸려면? 당연히 노력해야하지. (+_+) %s, %d, %f variable1 = "변수1" variable2 = "변수2" print("안녕하세요. %s 는 스트링 %d는 정수" (%variable1, %variable2) ) 처음 파이썬을 배웠을 때는 기초 문법에서 가르치는 방법을 썼다. 이게 아마 파이썬 2에서 사용하던 방식이라서 기초 문법에서 가르치는 것 같다. 이젠 어떻게 쓰는 거였나 싶을 만큼 까먹는다. 변수 타입이 안맞으면 먹지 않는다. %s는 문자열 %d는 정수 %f는 부동소수점 무작정 더하기 variable1 = "변..

데이터프레임(dataframe) 기초 설정값 몇가지

1. 판다스 임포트하기 2. 데이터프레임 출력시 행 생략 옵션 조정하기 3. 데이터프레임 출력시 열 생략 옵션 조정하기 4. csv 파일 불러오기 import pandas as pd # 판다스를 임포트 하고 pd로 줄인다. 국룰임. ## 판다스가 강제로 데이터 출력량을 생략할 때 이를 조정하는 옵션 ### # 판다스 데이터를 출력할 때 열이 길어지면 열을 생략한다. 이걸 끈다. pd.set_option('display.expand_frame_repr', False) # 데이터 출력할 때 행이 길어지면 생력한다. 1000줄까지 생략 안하도록 한다. pd.set_option('display.max_colwidth', 1000) ## csv 데이터 가져오기 # 인코딩 정의를 안해주면 한글 csv가 깨지는 일이..

[파이썬] 빈 리스트(시퀀스)를 확인하는 방법

가끔 리스트로 값을 추출하다가 리스트가 빈 상황을 대응하기 위해 체크를 해보려고 할 때가 있다. 특히 판다스로 데이터 프레임을 다루고 있다면 더더욱 많이 발생한다. 일 때 프로그래밍을 잘 모를 때는 아래와 같이 썼었다. if a == []: print("리스트가 비었습니다.") 위와 같이 표현할 수도 있지만 추천하지 않는다. 리스트, 튜플, string 등을 Sequence, 시퀀스라고 하는데 빈 시퀀스는 false를 리턴하기 때문에 아래와 같이 쓸 수 있다. if a is False: print("리스트가 비었습니다.") 하지만 직관성을 올리기 위해 가이드에서는 false에 대해서는 is보다는 not을 사용해서 아래와 같이 쓰도록 추천한다. If not a: print("리스트가 비었습니다.")

파이썬 파파고 번역 슬랙봇 만들기(2) : 슬랙봇 생성하기

지난 시간에는 파파고를 사용하기 위해서 네이버 API를 신청하는 법에 대해서 알아보았습니다.지난 글 : 파이썬 파파고 번역 슬랙봇 만들기(1) : 네이버 파파고 API 신청하기 이번에는 번역 명령을 받고 네이버 API를 사용하고 슬랙에 메시지를 보내줄 슬랙봇을 생성해보겠습니다. 슬랙봇 생성하기https://api.slack.com/apps 위의 주소로 들어가서 본인의 슬랙에 로그인을 하면 아래와 같은 화면이 나옵니다.tidbot은 제가 만든 앱이고 처음 이곳에 왔다면 비어있을 겁니다. Create New App을 눌러 봇을 추가합니다. 앱이름을 정하라고 나옵니다.우리는 앱을 만든다고 했지 아직 봇만든다고 안했습니다.이름을 적당히 정합니다. (바꿀 수 있다.)아래칸은 봇이 적용될 슬랙 공간을 고르면 됩니다..

파이썬 파파고 번역 슬랙봇 만들기(1) : 네이버 파파고 API 신청하기

슬랙에 번역 봇 만들기(파파고 API) 파파고의 번역 품질이 매우 좋아졌습니다. 왠만한 영어, 일본어 문장은 읽기 무난한 정도까지 번역을 해줍니다. 제법 긴 문장이나 기사까지 무리없이 번역을 해주는 것을 보면 이제 신뢰를 좀 해도 되지 않을까 싶습니다. 파이썬은 이미 설치되어 있다는 가정하에 진행하겠습니다. 어떻게 사용할까?@봇이름 언어명령어 번역내용봇이름을 치고 한일(한국어 -> 일본어) 영한(영어 -> 한국어) 와 같이 명령어를 치고 번역할 내용을 치면 아래와 같이 봇이 번역해서 되돌려줍니다. 필자가 사용 중인 슬랙의 봇의 번역 동작 진행 순서진행은 아래의 순서로 합니다. 1. 네이버 API 이용신청을 한다. 2. 슬랙에 봇을 생성하고 승인을 받습니다.3. 깃허브에서 Slackbot을 다운받는다.4...

Jupyter notebook 기본 브라우져 바꾸기

쥬피터 노트북을 쓰는데 자꾸 Edge 브라우저를 통해서 열리는 경우를 볼 수 있다.블로그들을 검색해보니 기본 브라우저를 바꾸면 된다고 해서 바꿔봤는데 여전히 Edge에서 열린다.기본 브라우저 바꾸기:(윈도우 - 검색 - 기본 앱 - 기본 앱 선택에서 웹 브라우저) 가만보니 쥬피터 노트북이 웹 주소를 쓰는게 아니라Html을 실행하고 있다. 즉, 기본 브라우저가 문제가 아니라 html 파일의 기본 프로그램이 바뀌어야하는데기본 브라우저가 바뀌어도 이게 안바뀌는 경우가 종종 있다. html 확장자의 실행 프로그램을 바꾸면 된다. (윈도우 - 검색 - 기본 앱 - 파일 형식별 기본 앱) 스크롤을 내려서 h로 시작하는 확장자 리스트에서 html을 찾아 크롬으로 프로그램을 바꿔주면 된다. 크롬으로 실행이 잘된다.

아나콘다와 파이참 연결

아나콘다를 자주 쓰는 파이참에서 활용하려면 인터프리터를 아나콘다에 설치한 파이썬으로 바꿔주는 작업이 필요하다. 파이참에서 프로젝트 셋팅할 때 설정을 할 수 있기 때문에 아래와 같이 진행하면 쉽게 연동을 할 수 있다. 1. 프로젝트를 아나콘다로 시작하기.1. 새 프로젝트를 연다.2. Base Interpreter를 아나콘다 내부의 파이썬 파일로 바꿔준다. 3. Inherit global site-package를 클릭해준다. (추가)Inherit global site-pakage를 꼭 체크할 필요는 없지만 나중에 하나하나 설치하려면 귀찮으니 미리 해주는 것이 좋다.4. Creat를 눌러 프로젝트를 시작하면 된다. 2. 아나콘다로 바꾸기.File - settings - project(자기 프로젝트이름이 써있음..