2014-11-05 4 views
1

что у меня есть словарь т.е.TypeError: аргумент типа «BOOL» не итерация

dict = {'tommy' = '[[], []]'} 

, когда я запускаю этот код, он выдает ошибку: argument of type bool is not iterable. Я действительно застрял на этом и был бы признателен за решение. Код принимает два входа, dict и пользователь. Он должен проверить, находится ли пользователь в dict - если это так, верните первый элемент в значение. в противном случае вернуть None.

def get_stuff(dict, user): 
    if user in dict: 
     return dict[user][0] 
    return None 
+0

Показать полную трассировку стека и как вы используете функцию. Функция выглядит нормально, это должны быть аргументы, которые вы передаете. –

+0

Я получаю синтаксическую ошибку на '{'tommy' = '[[], []]'}' как в Python 2, так и в Python 3. – Kevin

+0

dict должен быть: 'dict = {'tommy': [[], []]}' и not dict = '{'tommy' = '[[], []]'}' – Tico

ответ

0

проблема является

dict = {'tommy' = '[[], []]'} 

вы должны дать как

dict = {'tommy' = [[], []]} 

Словаре со списком в качестве элемента

+1

Это не проблема (хотя это будет проблема). Аргумент dict для функции - это bool по какой-то причине .. dict, построенный в вопросе, является синтаксической ошибкой и, вероятно, является просто проблемой копирования/вставки. –

+0

Правильно, но он должен дать подробную информацию :) – Nilesh

Смежные вопросы