본문 바로가기

TIL

파이썬 f-string 템플릿으로 쓰기

반응형

파이썬에서 f-string 쓰는법

파이썬에서 f-string은 바로 evaluation이 이루어지기 때문에 템플릿처럼 사용이 불가능하다. 정 사용하려면 아래처럼 람다로 사용해야 한다. f-string을 raw text로 저장해두고 이를 사용해서 포매팅을 하는 것은 불가능해보인다.

template = lambda name, handle : f'Current name is {name}, handle is {handle}'

 

DB 서버가 죽었는지 체크하는 방법

지금 하고 있는 프로젝트에서 파이썬에서 MySQLdb를 이용해서 Mysql 서버에 요청을 보내는데 연결이 살아있는지, 쿼리가 이상한지를 체크해야 한다.

일단 쿼리가 이상한가를 체크하는 데에는 서버에 쿼리 날린 다음에 MySQLdb.ProgrammingError가 발생하는지를 확인하면 된다.

연결이 죽어있다면 MySQLdb.OperationalError가 발생하게 된다. 문제는 서버가 아예 꺼져있을 때는 어떻게 판별할까인데 일단 응급처치로 1초 단위로 5번 요청을 보내고 계속 응답이 없다면 서버가 죽은 것으로 판단하도록 프로그램을 짜뒀다.

이를 어떻게 판단해야 할지는 좀 더 고민해봐야 할 거 같다.

반응형