■ 현재-ing/ㅡPython
파이선 if, elif, else, 문자와 변수 출력
with seok
2020. 7. 1. 13:13
조금 잘 못된 코딩 |
이와 같이 적을 경우 마지막에 else는 인접한 바로위의 if와만 관계가 된다. |
올바른 코딩 |
sXYnum=int(input("어떤 과일을 구입할까요?\n1.사과(500원)\n2.오렌지(2000원)")) if sXYnum==1 : AppleN=int(input("사과를 몇개 구입할까요?\n(1개 500원)")) SumT=AppleN*500 elif sXYnum==2 : print("당신은 여자입니다.") AppleN=int(input("오렌지를 몇개 구입할까요?\n(1개 2000원)")) SumT=AppleN*2000 else : print("1,2 중에서 입력하세요") print("총 가격은",SumT,"원입니다.") |
else if 는 elif로 줄여서 사용한다. if와 elif와 else 는 시작 위치가 같아야 함에 유의한다. 파이선은 위치에 따라 명령어가 구속되는 것 같다. |
만약 위 코딩에서 print("총 가격은"+SumT+"원입니다.") ,(콤마)를 +(플러스)로 고칠경우 SumT가 정수형태의 변수라서 +(더하기) 기호와 충돌이 일어나는 것 같다. 아쉽지만 ,(콤마)를 사용할 수 밖에 없다. |
문자끼리만 +(더하기) 기호로 합쳐서 출력 가능한 것 같다. |
가독성 있게 다듬은 코드 |
sXYnum=int(input("어떤 과일을 구입할까요?\n\n1.사과(500원)\n2.오렌지(2000원)\n선택과일? : ")) if sXYnum==1 : AppleN=int(input("\n사과를 몇개 구입할까요?\n(1개 500원)\n개수 : ")) SumT=AppleN*500 elif sXYnum==2 : AppleN=int(input("\n오렌지를 몇개 구입할까요?\n(1개 2000원)\n개수 : ")) SumT=AppleN*2000 else : print("\n1,2 중에서 입력하세요.\n") print("\n가격은",SumT,"원입니다.\n") |
print("어떤 과일을 구입할까요?") print("") print("") print("1.사과(500원)") print("2.오렌지(2000원)") print("") sXYnum=int(input("선택과일? : ")) print("") if sXYnum==1 : print("사과를 몇개 구입할까요?") print("(1개 500원)") print("") AppleN=int(input("개수 : ")) SumT=AppleN*500 elif sXYnum==2 : print("오렌지를 몇개 구입할까요?") print("(1개 2000원)") print("") AppleN=int(input("개수 : ")) SumT=AppleN*2000 else : print("\n1,2 중에서 입력하세요."),print("") print("") print("가격은",SumT,"원입니다.") print("") |
728x90