목록분류 전체보기 (73)
CDW (Coding Discussion World)
1. List 1-1. List 기본 및 Index List = [ "A", "B", "C", "D"] print(List) print(List.index("A")) print(List.index("B")) ['A', 'B', 'C', 'D'] 0 1 1-2. list.append List = [ "A", "B", "C", "D"] List.append('E') print(List) ['A', 'B', 'C', 'D', 'E'] 1-3. list.insert List = [ "A", "B", "C", "D"] List.insert(0, "F") print(List) List = [ "A", "B", "C", "D"] List.insert(2, "F") print(List) ['F', 'A', 'B', '..
1. 기초적인 연산 가장 기초적인 연산인 더하기 빼기 등이다. print(1 + 1) # 더하기 print(4 - 2) # 빼기 print(3 * 2) # 곱하기 print(9 / 3) # 나누기 print(2 ** 3) # 제곱 print(5 % 3) # 나머지 = 2 print(10 // 3) # 몫 결과값은 아래와 같다. 2 1 10 2.0 8 2 1 3 2. 비교 연산 크거나 같거나 다르거나에 대해 연산한다. print(12 > 3) # True print(5 >= 7) # False print(12 6)) # 좌항과 우항이 모두 참인가? print((6 > 0) or (3 > 6)) # 좌항 또는 우항 중 하나라도 참인가? print(n..
파이썬 패키지(라이브러리) 의존성 문제로 가상 환경을 사용한다. 파이썬2에서는 별도로 virtualenv를 설치해야 하지만 파이썬3 버전부터는 venv 으로 바로 가상 환경 생성이 가능하다. 아래는 가상 프로젝트 생성 PS C:\pyminv> python -m venv {프로젝트명} PS C:\pyminv> python -m venv pyminkivy 다음으로 가상 환경에 접속하려면 아래 명령어를 입력한다. 프로젝트 폴더 안에서 아래 명령어를 입력하면 생성한 가상 환경에 접속 가능하다. 접속하면 제일 앞에 ({프로젝트명})이 보인다. {프로젝트명}\Scripts\activate PS C:\pyminv> pyminkivy\Scripts\activate (pyminkivy) PS C:\pyminv> 만약 가..
이번에는 파일 읽고, 쓰기를 해보고자 한다. open으로 바로 접근하는 방법이 있고, with을 사용해서 접근하는 방법이 있다. 어떤 것을 써도 상관은 없지만 with을 쓰지 않으면 마지막에 close()를 해줘야 한다. 우선, 파일 읽기다 ('r' 사용) ### with 사용 with open(os.getcwd() + '/test.txt', 'r') as f: a = f.readlines() print(f'a = {a}') ### with 미사용 f = open(os.getcwd() + '/test.txt', 'r') b = f.readlines() print(f'b = {b}') f.close() 둘다 test.txt라는 파일을 정상적으로 읽었다. a = ['test1\n', 'test2\n', 't..
이번편은 파이썬의 logging 기능에 대해서 알아보고자 한다. 해당 기능을 사용하면 특정 error log를 출력할수도 있고 별도의 파일에 저장할수도 있다. 또한 try, except 문을 통해 특정 상황에 원하는 log를 출력할수도 있다. 우선 아래와 같이 설정해놓고 한줄한줄 확인해보자. ### 로깅 이름 및 레벨 (DEBUG, INFO, WARNING, ERROR, CRITICAL) pyminlogger = logging.getLogger("pymin") pyminlogger.setLevel(logging.WARNING) ### 로깅 출력 형식 formatter = logging.Formatter('%(asctime)s - %(name)s [ %(levelname)s ] - %(threadName)..
python의 datetime에 대해 알아보고자 한다. 1. 가장 기본적인 형태 import datetime # from datetime import datetime, time, date, timedelta #보통 이렇게 많이 쓴다. now = datetime.datetime.now() print(now) 2022-06-11 23:58:29.150157 2. 내가 원하는 형태로 출력 import datetime now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M') now2 = datetime.datetime.now().strftime('%Y/%m/%d %H:%M') print(now) print(now2) 2022-06-12 00:01 2022/06/12 ..

지난 편에서는 sqlite3 database에 있는 data를 출력하고 특정 게시글을 눌었을 때 별도의 URL페이지를 통해 디테일한 화면으로 이동할 수 있도록 설정하였다. 2022.11.12 - [Python/Do something] - python(django) - 장고로 웹페이지 만들기, detail page (7) 이런 과정에서 3개의 html 파일이 생겼고, 중복되는 부분이 많다. 중복되는 부분은 합쳐야 관리가 쉽다. 우선 navi.html로 신규 파일을 하나 생성하자. 이 파일을 main base로 사용할 예정이다. navi.html에 아래 내용을 붙여넣자. 내용 자체는 기존 base2.html 에 있던 내용들 중에서 바뀌지 않는 부분만 유지하고 내용이 변경되는 부분은 밑에 {% block ma..

지난 글에서는 sqlite3 datebase에 저장된 data를 실제 웹 화면에 출력하는 것을 진행했다. 2022.11.11 - [Python/Do something] - python(django) - 장고로 웹페이지 만들기, views (6) blog의 detail한 화면을 보기 위해서 modal을 이용해서 팝업 형태로 상세 내용을 확인했다. 하지만 팝업 형태가 아니라 별도 도의 URL주소와 page를 할당하는 형태로 하려면 어떻게 해야 할까? 추가 app은 만들지 말고 기존 blog app을 활용해서 최대한 간단하게 만들어보자. 우선 blog의 app의 views.py에 아래 새로운 class를 추가한다. class PostList2(ListView): model = Post template_name..