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

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

가후님의 프로필 이미지
가후

작성한 질문수

남박사의 파이썬으로 실전 웹사이트 만들기

글 작성 폼에 HTML 에디터 기능 추가하기

if문 문의 드립니다.

작성

·

141

1

어떤 데이터가 있는지

이전에 if문을 사용하실때는

if a is not None - 이런식으로 작성하셨어요

 

그런데, 영상 25분 33초에 보면

여기 if문은

if file and allowed_file(file.filename): 

이렇게 작성해 주셨는데

 

 

if file is not None and allowed_file(file.filename): 

이렇게 작성하는거랑

if file and allowed_file(file.filename): 

이렇게 작성하는거랑 똑같이 동작하고

같은 의미인게 맞나요?

답변 1

1

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

넵 맞습니다~~

 

if file is not None and allowed_file(file.filename): 

if file and allowed_file(file.filename): 

 

말씀하신것 처럼 두개의 조건문은 같은 조건을 판단하는 내용입니다. 예를 들어 file 객체가 None 이 아님을 확인할때 if file is not None 처럼 쓸수 있지만 이 말은 반대로 file 은 참이어야 하니까 if file 로 줄여쓸수 있습니다. 이는 코딩 습관이나 스타일에 의해 결정되는데 만약 file 만 비교하는 거였으면 

if file:
   ...어쩌구..

보다 

if file is not None:
   어쩌구...

 

이게 좀 더 가독성이 좋아보이는 것 같아서 저는 그렇게 잘 씁니다. ㅎㅎ ^^;; 물론 여러 조건을 비교해야할때는 굳이 길게 늘여쓸 필요는 없을것 같아서 짧게 씁니다. 역시 가독성때문이라고 보시면 될듯 합니다. 또한 c 스타일로 if file != None 이라고 사용할 수 있을것 같습니다.

 

 

가후님의 프로필 이미지
가후
질문자

감사합니다!

가후님의 프로필 이미지
가후

작성한 질문수

질문하기