2015-04-26 3 views
0

Я пытаюсь написать программу на Python следующей спецификации:погода программы (я отталкивался и обнаружил ошибку)

-store за каждый месяц года, средняя месячная температура, для выбранного места

-выбора комбинации месяцев, и вычислить и отобразить общую среднюю температуру за эти месяцы с округлением до ближайшего целого числа

Вот что я написал:

months = ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec") 

#user input 
location = input("Where in Scotland are you? ") 

for i in range(12): 

     temps = int(input("Enter the average temperature in celsius for []",months[i])) 

monthsSelected = input("Please select a combination of at least two months: ") 

#output 
print("Monthly average temperatures: January: [Jan] February: [Feb] March: [Mar] April: [Apr] May: [May] June: [Jun] July: [Jul] August: [Aug] September: [Sep] October: [Oct] November [Nov] December [Dec]") 

print("Average Temp for these months:", sum(temps)/12) 

Когда я запускаю программу, я сталкиваюсь с этим:

TypeError: input expected at most 1 arguments, got 2 

Я не понимаю, что это значит. Может ли кто-нибудь предложить исправление и/или любые улучшения, которые я могу сделать?

(Вы можете помнить меня из сообщения, отправленного около часа назад, который в основном попросил вас написать мою программу для меня. Хорошо, я принял совет пользователя и прочитал некоторые руководства по спискам и массивам python и обеспечил начало моей программы)

+0

'' Введите среднюю температуру по Цельсию для [] ", months [i]' is ** not ** как * any * методов форматирования строк Python; вы просто передаете два отдельных аргумента «input», следовательно, (очень ясная!) ошибка. Пожалуйста, подумайте над чтением учебника. – jonrsharpe

+1

Это всегда освежает, когда кто-то улучшает качество своих вопросов. Хорошая работа. Для вашего вопроса вы передаете два аргумента int в этой строке: 'int (input (« Введите среднюю температуру по Цельсию для [] », месяцев [i]))' Вероятно, вы хотите попробовать форматировать строку: https : //docs.python.org/2/library/string.html#format-examples – Shashank

+2

Хорошо, что вы хотите учиться и совершенствоваться. Могу ли я предложить менее личные комментарии, например: «Спасибо, что помог нооб», «Добрый вечер ...». Просто сосредоточьтесь на технических аспектах, личная торговля нахмурилась здесь. – paisanco

ответ

0

две вещи:. 1 \ Массивы определяются [], так

months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] 

2 \ строка формата не является правильным

temps = int(input("Enter the average temperature in celsius for [%s]" % months[i])) 
+0

Спасибо за помощь, любые советы по этому вопросу: -выберите комбинацию месяцев, а также вычислите и покажите общую среднюю температуру за эти месяцы округленной до ближайшего целого. Не обязательно быть фактическим кодом, даже предложение о том, что использовать, было бы действительно полезным –