python 스트링 포매팅 처리 시 f'blar blar' 이 방식만 안되는 이유가 무엇인지요?

조회수 531회

https://wikidocs.net/21#_2 연습문제 5번을 풀고 있습니다.

스트링에 대해서 포매팅을 하기 위해서 2가지 방법이 있다고 배웠는데(format사용방법, f''사용방법), f''이 방법만 동작하지 않는 이유가 궁금 합니다.

i=7
while i > 0:
  if (i % 2):
      temp='*' * i
      print(f'{temp:^7}')
  i=i - 1

이 코드와

i=7
while i > 0:
    if (i % 2):
        temp='*' * i
        print(f'{temp:^7}')
    i=i - 1

는 동작하는데요,

temp가 불필요하다고 생각해서 아래와 같이 수정을 했습니다.

i=7
while i > 0:
  if (i % 2):
      print(f'{('*' * i):^7}')
  i=i - 1

File "", line 3 SyntaxError: f-string: mismatched '(', '{', or '['

f''방식은 format과 비슷한 방식이 아닌지요?

1 답변

  • 좋아요

    0

    싫어요
    채택 취소하기

    print(f'{('*' * i):^7}')에서 따옴표 사용을 실수하신 것 같아요. print(f'{("*" * i):^7}') 처럼 쓰시는게 어떨까요?

    혹시 제 답변을 잘 이해하지 못하셨으면 댓글을 달아주세요.

    • 아... ' ' 로 열었기 때문에 그 안에 특수 문자?인 *는 " " 로 감싸줘야 한다는 말씀이신거죠? 이해했습니다. 답변 감사 드립니다. ㅠㅠ nyschoi 2018.11.11 14:31

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)