본문 바로가기

언어별 팁 정리/Python

(7)
[코드꿀팁 : Python] 가끔 생각나는 문법들 기본 라이브러리 1.깊은복사와 얕은복사 import copy [list2]=copy.deepcopy([list1]) id(list1), id(list2) ## 객체의 일련번호를 출력 2.Python 문자열 ord('[char]'), chr('[num]') ## 아스키변환 str([num]), int([str]) ## 형번환 Python 데이터구조 1.Python의 List [[expression] for I in [list] if [filter(i)]] [[expression1] if [filter(i)] else [expression2] for I in [list]] ## 데이터함축 list[row/행][column/열] ## 2차원 기준 2.Python의 Dict {[keys]:[expression]..
[윈도우 명령어] Pycharm 셋팅과 관련한 명령어 정리 및 정리법 Pycharm 설치과정에서 발생하는 주요오류 1. cmd 창에서 python이 실행이 안되는 경우 ...\Anaconda3 ...\Anaconda3\Scripts ...\Anaconda3\Library\bin 위의 3개의 Root를 내컴퓨터의 속성에서 환경변수에 추가하기 2. pycharm에서 cmd 명령어가 실행이 안되는 경우 C:\\Windows\\System32\\cmd.exe pycharm의 setting에서 terminal의 shell path를 위와같이 수정하기 Python 실행과정에서 발생하는 주요오류 1. Task 종료하기 tasklist.exe taskkill /pid [pid번호] /F tasklist.exe를 활용해서 process 이름과 pid 번호 확인하고 /F로 강제로 proce..
[코드꿀팁 : 백준] 백준에서 발생하는 다양한 오류 처리법 input() 말고 stdin.readline()을 사용하자. 아래의 코드처럼 input() 형태말고 stdin.readline()은 자주 사용했었다. 문제는 map을 활용해서 변수의 데이터타입을 한번에 처리한다거나, list의 comprehension을 활용하면 빠르게 정리가 가능하다는 점이 인상깊었다. a = [int(x) for x in input().split()] a = map(int, sys.stdin.readline()) N = input() a = [stdin.readline() for i in range(N)] 재귀함수가 있는 경우 최대 재귀깊이를 설정해줘야 한다. python에서 재귀함수를 활용할 경우에 백준에서는 오류가 발생할 수 있다. 사실 그래서 백준에서는 재귀함수를 일부러 활용하..
[코드꿀팁 : Python] lambda, map, filter 1. 개요 lambda 함수와 lambda 함수와 연계하는 map과 같은 함수들의 조합은 매우 파이써닉한 표현법인것 같다. lambda를 활용하는 방법은 자주 사용하지 않다보니까 이론적으로만 이해한 상태로 넘어갔었다. 문제라면 lambda 함수를 이론적으로만 이해하고 넘어가다 보니까 실제로 사용해야할 때 lambda 함수에 대한 거부감이 커서 자주 활용하지 않는 단점이 있었다. 이를 해결하기 위해서 이참에 문서로 정리해보고자 이런 글을 작성하게 되었다. 서두에서 밝혔듯이 기존에는 사실 lambda함수를 자주 사용하지 않았다. lambda + map의 조합보다는 list comprehension에 if/else문을 활용해서 연산을 실행하는 경우가 많았으며, 데이터의 정합성을 위해서 labmda + filt..
[코드꿀팁 : Python] try, except, else, finally 1. 개요 프로그래밍을 하다보면 다양한 오류에 직면하게 된다. 특히나 개인적으로는 For문으로 프로그래밍처리를 하는 진행중에 특정 데이터가 오류를 발생하는 경우가 많다. 이런 경우에 매번 error값을 찾아서 오류를 수정하고 For문을 반복하는 방식으로 오류를 처리할수도 있지만, 오류의 형태가 다양하게 발생할수 없는 구조에서는 위와같이 한땀한땀 장인정신을 가지고 수정하는것은 많은 시간을 요구한다. 특히나 For문으로 정상적인 데이터를 연산을 진행하다가 진행되기 때문에 Error를 확인하고 수정하는데 많은 시간이 소요된다. 이와같은 문제점을 해결하기 위한 방법으로 사실 이론적으로는 try/except/else문이 있다는 것까지는 알고 있었다. 하지만 실제로 사용을 못해보다가 최근에 우연히 try-excep..
[단축키정리] Jupyter Notebook+Pycharm 단축키 Pycharm 1.기본단축키 ctrl + alt + l ## 자동정렬 ctrl + alt + O ## import문 최적화 alt + shift + e ## 줄 실행 tab / shift + tab ## 탭 변경 ctrl + / ## 주석처리 ctrl + e ## 특정 파일로 이동 ctrl + w ## 안쪽 괄호부터 범위확인 ctrl + space ## 사용가능 method 찾기 2 . Git 기본단축키 alt + 9 ## git view on alt + ` + 4 ## git history alt + ` + 7 ## branch ctrl + k ## commit ctrl + shift + k ## push ctrl + shift + A ## git pull Jupyter Notebook 1. 명령모드 ..
[python 명령어] offline환경에서 python 패키지 설치방법 패키지 다운로드 1. 현재 구성된 가성환경에 설치된 패키지 목록 확인방법 pip list 2. 현재 구성된 가성환경에 설치된 패키지를 지정된 경로에 다운로드(pip, steuptools는 제외) mkdir librarySet #윈도우의 경우에는 폴더 생성 pip freeze > librarylist.txt pip --trusted-host pypi.org --trusted-host files.pythonhosted.org download -d ./librarySet -r librarylist.txt 단, conda update를 할 경우에는 conda의 version과 pip에서의 라이브러리 버전간의 차이 때문인지는 모르지만 현재 library가 pip에는 없다는 오류가 발생함 위의 문제가 발생할 경우에..