Найти - Пользователи
Полная версия: объясните новичку
Начало » Python для новичков » объясните новичку
1
Mikhail911
counts = dict();
names = ‘mikhail’, ‘artur’, ‘stepan’, ‘mikhail’
for name in names:
if name not in counts:
counts = 1
else :
counts = counts + 1
print(counts)


Добрый день форумчане. Объясните не могу понять.
Почему пишется if name not counts ?
ведь counts у нас пустой и мы не добавляли в словарь ничего. На каком этапе происходит пополнение словаря counts ?
marvellik
ни на каком! после первой итерации цикла и выполнения условия if ( а оно выполниться так как словарь пустой и первого же имени в нем нет) ваша переменная counts переопределяется в тип int и становиться числом 1 ! ну а дальше ошибка так как число не итерируемый объект и if name not in counts к нему не применимо.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB