파이썬 replace 함수 관련해서 질문드립니다!

조회수 39회
for answer in QF:
        ans = "{:.2f}".format(answer)
        if ans in "0.00j":
            print(ans.replace("0.00j", ""))
        else:
            print(ans)

만약 답에 0.00j이 있으면 그걸 삭제하고 출력해야 해서 replace 함수를 사용해봤는데 자꾸

Calculated answer is(are): -3.73+0.00j -0.27-0.00j

이런식으로 0.00j가 그대로 출력되네요.. 뭐가 문제인걸까요? 파이썬 고수님들 도와주세요!

1 답변

  • 좋아요

    1

    싫어요
    채택 취소하기

    3번째 라인인 if ans in "0.00j":를 if "0.00j" in ans: 으로 변경해보세요

    replace함수는 정상적으로 사용하셨는데 기능동작을 하지 않는것은 조건문제입니다.

    즉 전체적 코드는 아래와같이 변경되야겠죠

    for answer in QF:
            ans = "{:.2f}".format(answer)
            if "0.00j" in ans:
                print(ans.replace("0.00j", ""))
            else:
                print(ans)
    
    • 감사합니다! 덕분에 잘 해결됬어요!!!! 떡볶이 2020.5.22 12:40
    • 여기서 항상 도움만받다가 처음으로 답변할 기회 생기게해주셔서 감사합니다 :) NoobCoder 2020.5.22 15:01

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

Hashcode는 개발자들을 위한 무료 QnA 사이트입니다. 계정을 생성하셔야만 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 계정을 생성하셔야만 글을 작성하실 수 있습니다.