2011-12-15 13 views
8

मैं पाइथन के लिए काफी नया हूं, और मेरी समस्या के बारे में मुझे पागल बनाता है कि मुझे लगता है कि यह वास्तव में सरल है। मुझे लाइन 8 में त्रुटि मिल रही है। मैं बस इस कार्यक्रम को संख्या लेना चाहता हूं उपयोगकर्ता ने सबसे बड़ा और सबसे छोटा दर्ज किया और प्रिंट किया, और यदि मैं नकारात्मक दर्ज करता हूं तो मैं लूप को रद्द करना चाहता हूं।पायथन अधिकतम और न्यूनतम

'int' object is not iterable त्रुटि है।

print "Welcome to The Number Input Program." 

number = int(raw_input("Please enter a number: ")) 

while (number != int(-1)): 
    number = int(raw_input("Please enter a number: ")) 

high = max(number) 
low = min(number) 

print "The highest number entered was ", high, ".\n" 
print "The lowest number entered was ", low, ".\n" 

raw_input("\n\nPress the enter key to exit.") 

उत्तर

8

हर बार जब आप अधिकतम और न्यूनतम और पाइथन को एक पूर्णांक तर्क पास करते हैं तो यह नहीं पता कि इसके साथ क्या किया जाए।

ईथर पास कम से कम दो तर्क:

least_number = min(number1, number2,...,numbern) 

या एक iterable:

least_number = min([number1, number2, ...,numbern]) 

यहाँ doc

+0

मैं अधिकतम और न्यूनतम में एकाधिक संख्या कैसे पारित करूं? स्पष्टीकरण के लिए धन्यवाद कि यह क्यों काम नहीं कर रहा है। –

+0

@SpeedyBast संपादित – soulcheck

15

है समस्या यह है कि number एक int है। max और min दोनों सूचियों (या अन्य iterable चीजों) की आवश्यकता होती है - तो बजाय, आप number तो जैसे किसी सूची में जोड़ने के लिए है: डॉ jimbob के जवाब को पढ़ने के बाद बस एक नोट के रूप

number = int(raw_input("Please enter a number: ")) 
num_list = [] 

while (number != int(-1)): 
    num_list.append(number) 
    number = int(raw_input("Please enter a number: ")) 

high = max(num_list) 
low = min(num_list) 

- मेरा उत्तर मानता है कि आप high और low ढूंढते समय -1 के लिए खाता नहीं करना चाहते हैं।

+8

'int (-1)' बेकार है। '-1' पहले से ही' int' – juliomalegria

+7

पूरी तरह से सत्य है, और इसे ठीक किया जाना चाहिए। हालांकि, सवाल में यह तरीका था, और मैं उत्तर कोड प्रदान करने में दृढ़ आस्तिक हूं जो प्रश्न कोड से जितना संभव हो उतना विचलित हो जाता है। – Nate

+0

स्पष्टीकरण के लिए धन्यवाद। –

1

आपको संख्याओं की सूची में नंबर बदलने की जरूरत है। जैसे,

print "Welcome to The Number Input Program." 

numbers = [] 
number = int(raw_input("Please enter a number: ")) 

while (number != -1): 
    numbers.append(number) 
    number = int(raw_input("Please enter a number: ")) 

high = max(numbers) 
low = min(numbers) 

print "The highest number entered was ", high, ".\n" 
print "The lowest number entered was ", low, ".\n" 

raw_input("\n\nPress the enter key to exit.") 
0

another answer, min और max ने उल्लेख किया भी कई तर्क ले सकते हैं। सूची को छोड़ने के लिए, आप

print "Welcome to The Number Input Program." 

number = int(raw_input("Please enter a number: ")) 
high = low = number 


while (number != int(-1)): 
    number = int(raw_input("Please enter a number: ")) 
    high = max(high, number) 
    low = min(low, number) 

print "The highest number entered was ", high, ".\n" 
print "The lowest number entered was ", low, ".\n" 

raw_input("\n\nPress the enter key to exit.") 
संबंधित मुद्दे