목록Python/Python (24)
규도자 개발 블로그
파이썬3.x[python3.x]에서 요소가 하나인 튜플을 문자열이 아닌 튜플로 인식시키기 i_wanna_be_tuple = ('really') print(i_wanna_be_tuple) print(type(i_wanna_be_tuple)) u_need_to_do_like_this = ('like this',) print(u_need_to_do_like_this) print(type(u_need_to_do_like_this)) 어제 부딪힌 문제였다. django로 작업을 하던 와중 django form을 이용해 입력란을 만들고 있었는데 modelform은 상속받은 model을 기반으로 해서 입력 form을 작성해준다. 하필 입력받을 form 요소가 딱 하나였는데 이를 tuple형태로 정의해야하는 지라 단순..
파이썬(Python) 내장함수의 시간복잡도 나는 내장함수는 뭔가 당연히 최적화돼있겠거니 하고 생각없이 쓰곤 한다. 하지만 그런 자세가 프로그램의 효율에 커다란 영향을 끼치지 않나 싶다. 특히 이번에 에라토스테네스의 체를 응용한 문제를 풀고 있는데 정확한 개념을 알기 위해 위키에 쳐보니 다음과 같은 함수가 나왔다. def prime_list(n): # 에라토스테네스의 체 초기화: n개 요소에 True 설정(소수로 간주) sieve = [True] * n # n의 최대 약수가 sqrt(n) 이하이므로 i=sqrt(n)까지 검사 m = int(n ** 0.5) for i in range(2, m + 1): if sieve[i] == True: # i가 소수인 경우 for j in range(i+i, n, i)..
윈도우(windows)에서 파이썬(python) 2.x버전과 3.x버전 동시에 쓰기 나는 파이썬을 시작한지 얼마 되지 않아서 3.x버전만 다뤄왔었다. 하지만 리눅스 환경에서 기본값으로 깔려 있는 파이썬은 대체로 2.x버전이었다. 리눅스환경에서야 symlink로 각 명령어에 대한 구분이 가능하지만 윈도우같은 경우에 파이썬3버전과 2버전을 동시에 깔면 무조건 python이라는 명령어에 python 2.x대가 붙는 현상이 있다. 나의 경우에는 python3.x로 작업을 하다가 node.js를 깔면서 위의 현상을 겪었는데 node.js의 npm이 python2.7을 사용하고 있기 때문이다. node.js를 깔기 전에 콘솔 창에 python -V를 치면 3.7.x가 떴는데 이제는 2.7.15가 뜬다. 환경변수 설..
CentOS로 Python3.x쓰기 및 yum에러 해결 CentOS에 기본적으로 설치돼있는 파이썬의 버전은 2.x대이다. 하지만 파이썬은 2버전과 3버전으로 나뉘어져있는 데다가 2버전은 곧 지원이 끊긴다. 심지어 아주 기본적인 문법에서부터 차이가 있어서 2.x에서 작성된 소스를 3.x으로 돌리면 제대로 돌아가지 않는 경우가 왕왕 있다. 하지만 파이썬 3.x가 필요하다면 어떻게든 설치해서 사용해야 한다. 굳이 CentOS뿐만 아니라 Fedora, Redhat계열 리눅스에서 통용되는 방법이다. ius Repository를 yum에 추가한다. $ yum install -y https://centos7.iuscommunity.org/ius-release.rpm python3로 시작하는 라이브러리들을 확인한다. ..