반응형 python4 [Python] 자주 사용하는 String Format 정리[feat. locals()] 개발을 하다 보면 문자열을 손질할 때가 많이 생깁니다. 파이썬에서도 여러 가지 문자열 포맷팅 방식이 존재하는데요, 이번에는 제가 최근에 알게 돼서 애용하고 있는 locals()를 포함하여 String Format 방식 3가지를 알아보겠습니다. 1. format def db_work(schema, table, major): sql = """ SELECT * FROM {}.{} WHERE major = {} """.format(schema, table, major) print('sql: ', sql) db_work('student', 'info', 'math') #sql: # SELECT * # FROM student.info # WHERE major = math - 파라미터가 많아지면 지저분해집니다. 2... 2023. 5. 19. [Python] 컬럼 type이 list인 DataFrame에서 subset 구하기 DataFrame에서 값의 type이 list인 컬럼을 조건으로 subset 구하는 법을 알아보겠습니다. 우리가 흔히 쓰는 subset 방법이 값이 list 형식일 때는 통하지 않는데요, 사실 list 타입을 값으로 지니는 컬럼이 흔치 않기 때문에 subset 원리에 대해서 깊게 생각한 적 없으면 방법을 헤매는 경우가 많습니다.(저 포함...) 하지만 array 타입을 지원하는 DB를 사용하다 보면 이런 상황을 자주 마주하게 되는데요, 원리와 함께 방법을 알아보겠습니다. 1. 실습 DataFrame 준비 import pandas as pd people = pd.DataFrame( { 'Name': ['teemo', 'jinx', 'jax', 'riven'], 'age': [10, 20, 30, 40], .. 2023. 5. 17. [Python] 버퍼를 이용해 input에 자동으로 입력하기 이번 기능은 다음과 같은 상황을 해결하다가 알게 되었습니다. 어떤 API를 이용해서 DB에 접속해 주기적으로 데이터를 읽어야 했습니다. 그런데 API는 일정 시간마다 접속이 끊겼고, 그때마다 다시 연결해야 했습니다. 그런데 API에는 받는 파라미터가 없었고, id, pw를 매개변수로 넘겨서 연결하는 게 불가능했습니다. API 내부는 모르지만 대충 사용방식이 아래와 같습니다. 이 때문에 DB에 주기적으로 접속하는 프로그램이 완전한 자동화가 못되고, 주기적으로 사용자가 직접 프로그램을 확인해서, API 연결이 끊어져 있으면 id와 pw를 직접 타이핑했어야 했는데요, 이를 해결한(자동화한) 방식을 살펴보겠습니다. 1. 해결 코드 import sys import io f = io.StringIO('ID Stri.. 2023. 5. 7. [PyCharm] Exception에 밑줄 처리하기 Pycharm으로 개발을 하다 보면, PEP8 코딩 스타일에 어긋나거나, 잘못된 코드에 밑줄이 그어지는데요, 대부분 이를 고치면 더 좋은 코드가 됩니다. 이번엔 Exception을 썼을 때, 이를 해결하는 법을 알아보겠습니다. 1. 현상 - 좌측과 우측 모두 except 부분에 밑줄이 그어져 있습니다. - 좌측과 같이 except에 아무것도 안 쓰는 건 확실히 안 좋은 습관입니다. 예외가 발생했을 때, 어떤 이유로 예외가 발생했는지 알 수 없기 때문입니다. - 우측도 마찬가지입니다. Exception 클래스는 다른 모든 예외 클래스의 부모 클래스여서, 모든 예외를 다 잡기 때문에 결국 어떤 예외가 발생했는지 알 수 없습니다. 2. 해결 2.1. as 사용하기 - 위와 같이 as를 붙이면 밑줄이 사라집니다.. 2023. 5. 3. 이전 1 다음 반응형