Как ошибки в python ссылаются на ввод в имени функции
Я пытался создать функцию с исключением, которая ссылается на входы, но когда возникает исключение, он просто печатает значение ввода, а не имя входов. Смотрите пример ниже:
def f(input):
d = {}
for i in input:
if i in d.keys():
raise TypeError('values in ' + str(input) + ' not unique')
d[i] = something(i)
return d
Если мы попробуем
example = [1,2,5,2]
f(example)
Что возвращается:
<ipython-input-61-9420e59c3229> in f(input)
5 for i in input:
6 if i in d.keys():
----> 7 raise TypeError('values in ' + str(input) + ' not unique')
8 d[i] = something(i)
9 return d
TypeError: values in [1, 2, 5, 2] not unique
Однако то, что я хочу, это:
TypeError: values in 'example' not unique