2016-10-27 5 views
0

미리 주어진 사전 내에서 코드의 다른 부분에 의해 주어진 숫자를 사용자에게 배정하려고합니다. 여기 내 예제 코드파이썬 : dict의 숫자로 입력을 곱하십시오.

randomdict = {'22' : {'name' : 'sponge', 'price' : 1}} 
choice = input("Enter a number: ") 
amount = input("How much of that item?: ") 
if choice in randomdict: 
    price = amount * (randomdict['price']) 
    print("Price is "+str(price)) 

당신은 내가 DICT randomdict에 저장되는 항목의 가격을 곱한 사용자의 입력 양을 얻으려고 볼 수 있듯이이다. 어떻게해야합니까? 나는 시간과 노력을 다시했지만 시도 할 수는 없다.

+0

선택 및 양 문자열이다. 먼저 숫자로 분석해야합니다. – Carcigenicate

+0

만약 내가 그렇게한다면'price = amount * (randomdict [ 'price'])'라는 줄이 맞을까요? – Joshhh

+0

방정식의 모든 것이 숫자라면, 네가 맞아야합니다. – Carcigenicate

답변

2

randomdict['price'] 존재하지 않는다. 원하는 경우 randomdict[choice]['price']

또한 가격을 계산하려면 amount을 정수로 지정하십시오. 사이드 참고로

price = int(amount) * randomdict[choice]['price'] 

: price이 값에 대한 가장 큰 이름이되지 않을 수 있습니다. 이 값은 실제로 total (가격 x 수량)이며 price이 아닙니다. 명시 적으로을 작성 :

quantity = int(amount) 
price = randomdict[choice]['price'] 
total = price * quantity 
0

무엇을이 1 행의 '22'입니까? 사전에 사전이 있고, 가격은 내부 사전에 있습니다. 입력 내용이 '22'이어야하며 '22'이고 선택해야 할 내용은 randomdict[choice]입니다. 당신이 randomdict[choice]['price']

if choice in randomdict: 
    price = amount * (randomdict[choice]['price']) 
    print("Price is "+str(price)) 

희망을 필요로하는 가격을 얻으려면이

0

내가 두 단계 절차를 사용하는 것이 도움이됩니다. randomdict에서 선택한다면 : Z = randomdict [선택] p = Z [ '가격'] 가격 = INT (양) * P

관련 문제