2017-08-10 2 views
-1
a = 3.50 
print"Price of Sandwich: $",a, 
print"" 
Jeff =(raw_input('Enter how many of this item:')or 0.0) 
if(Jeff.isalpha()): 
    Jeff == 0 
a = (Jeff * a) 
print'Total: $'+ str(a) 
print'' 

J'ai besoin l'entrée alphabétique pour devenir un 0 au lieu du programme tout écraser. MerciComment autoriser l'entrée alphabétique en tant que nombre?

+3

Ce que vous voulez est 'Jeff = 0' pas' Jeff == 0' –

Répondre

0

Essayez de cette façon:

a = 3.50 
print "Price of Sandwich: $",a 
print 
Jeff = (raw_input('Enter how many of this item:') or 0.0) 
if(Jeff.isalpha()): 
    Jeff = 0.0 
a = (float(Jeff) * a) 
print 'Total: $'+ str(a) 
print 
+1

Vous êtes une légende – GAVDADDY

+0

Merci @GAVDADDY –

0

Ce que vous voulez est le suivant:

a = 3.50 
    print"Price of Sandwich: $",a, 
    print 
    Jeff =(raw_input('Enter how many of this item:')) 
    if (Jeff.isalpha()): 
     Jeff =0 
    a = (int(Jeff) * a) 
    print'Total: $'+ str(a) 
    print 

Cela changera Jeff-0 si l'entrée est une lettre que le programme ne plantera pas. Et parce que Jeff est une chaîne que vous avez utilisé raw_input, pour le multiplier par a vous devez le changer en entier en utilisant int(). Comme mentionné, vous n'utilisez pas == double égal ici, vous utilisez double égal si vous recherchez une réponse pas lorsque vous donnez une variable une valeur.

+0

@GAVDADDY Hope this explique certaines choses – Ruby