inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

파이썬(Python) 기초부터 실무까지 part.1

반복문(실습-7)

"끝"을 입력하면 에러가 발생하여 질문드립니다.

395

sinyoung408

작성한 질문수 1

0

cnt = 0     # 상품 개수
sum = 0 # 상품 가격 합친 것
price = ""
print("상품금액 입력을 종료하고자 한다면 \"\"을 입력해주세요.")
while True:
price = input("상품 금액을 입력하세요. , 음수제외. : ")
if int(price) > 0:
sum += int(price)
print("현재 총 합산된 금액은 %d 입니다." %sum)
cnt += 1
elif int(price) < 0:
print("음수는 해당되지 않습니다. 다시 입력해주세요.")
continue
elif price == "":
print("입력을 종료합니다.")
print("총 물건의 개수는", cnt, "이고, 합산 금액은 %d입니다." %sum)
break-
 
더불어 %d %d 를 사용하였을 때 뒤에 %cnt %sum 을 이어 사용하였더니 에러가 발생하였습니다. 이는 어떻게 해결해야 하나요?

python

답변 3

0

Vanitas

% 여러개 넣으면 문자열 뒤에 %(변수1, 변수2) 이렇게 순서대로 쓰면 될거에요

0

임현민

% 뒤에 띄어쓰기 해보세요

0

이태경

반복문 속 조건문에서 선순위로 시작되는 if문에서 오류가 나는 것 같습니다.

 

작성하신 것과 같이 

    if int(price) > 0:
가 앞으로 오고
    elif price == "끝":
가 뒤로오게 되면
 
 

우선적으로 int(price) > 0을 먼저 판단하게 됩니다. 이때 숫자를 입력할때는 이상이 없지만 문자열을 입력받게 되면 문자열"끝"인 price를 int값으로 변환시킬 수 없기 때문에 오류가 발생하게 됩니다.

이를 해결하기 위해서 

    if price == "끝":
 
    elif int(price) > 0:
 
로 변경하여 끝이 올때를 먼저 판단하게 해주면 제대로 실행되게 됩니다.
 
 

혹시 이 강사분 c언어 강의는 없나요?

0

56

1

변수가 포함된 문장을 쓸 때의 공백 문제

0

581

1

while.py

0

298

0

강의 질문

0

283

1

파이썬 인터프리터

0

400

0

인터프리터 설치가 안되요

0

262

0

파이썬 인터프리터 설치

0

439

0

ex05 질문이요

0

257

1

5.0은 왜 안되나요?

0

409

1

마지막 숫자 입력하는 문제

0

334

1

조건문 실습2 ex05에서

0

300

1

마지막 예제 그냥 for i in range(5,0,-1) 해도 되지 않나요?

0

273

1

함수의 사용방법이 궁금합니다

0

322

1

파이참 turtle_graphic 실행 오류

0

540

0

파이참에서 pi가 없어요

0

195

0

완강하신분들께 여쭙니다! 본 강의 추천하시나요?

0

471

2

설치하고 cmd에서 파이선이라고 치니까 마이크로소프트 스토어에 다운로드 창이 나와버립니다

1

387

2

10강 변수와 계산(실습-2) ex06 질문

0

292

1

실행이 안돼요.

0

281

1

31분 영상에서 질문있습니다

0

240

1

ex08에서

0

206

1

터틀이 안불러와줘요

0

273

1

질문 드립니다

0

399

5

반복문 피보나치 수열 질문

0

441

2