인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

수뼈님의 프로필 이미지

작성한 질문수

남박사의 파이썬으로 봇 만들기 with ChatGPT

구글 캘린더 모듈을 위한 jwt 토큰 생성 및 코드 구현하기 #2

본 강의 46째 라인에서 오류가 발생하지 않는 이유가 뭔가요?

작성

·

86

0

if timeMin is not None:

if isinstance(timeMin, str):

timeMin = datetime.strptime(timeMin, "%Y-%m-%d")

timeMin -= timedelta(hours=9)

url += f"&timeMin={timeMin.isoformat("T")}Z"

 

마지막 줄을 실행하면 원래 쌍따옴표 내 쌍따옴표라서 오류가 떠야 하는데, 영상에서는 오류가 없습니다. 반면 제 환경에서는 예상대로 오류가 발생했고, 혹시 몰라 강사님 코드 원본을 실행해 봐도 같은 오류가 발생했습니다.

 

오류 해결법이 아니라, 왜 영상에서는 해당 오류가 발생하지 않는지 궁금합니다!

답변 1

0

남박사님의 프로필 이미지
남박사
지식공유자

url += f"&timeMin={timeMin.isoformat("T")}Z"

여기서 url 문자열 변수를 보면 f스트링 형식이고 그안에 {} 중괄호가 있어서 중괄호 안의 내용은 문자열 처리가 되지 않고 그 결과가 먼저 수행이 되기 때문에 일반적인 문자열 내부에 쌍따옴표 2개로 인식하지 않고 중괄호 안의 내용을 먼저 코드처리 후 그 결과가 문자열 조합이 되기 때문에 오류가 나지 않습니다. 물론 이는 파이썬 3.12.x 버전 이상부터 지원되는 기능이라 그 이하의 버전에서는 오류가 발생합니다.

 

image.png

 

위 이미지에서 보면 아래의 파이썬 3.11.x에서는 오류가 발생하고 위의 3.12.x 에서는 오류가 발생하지 않는것을 확인할 수 있습니다.

수뼈님의 프로필 이미지

작성한 질문수

질문하기