len (longest): longest = key return longe" /> len (longest): longest = key return longe" /> len (longest): longest = key return longe"/>

Nonetype has no len()

687 views Asked by At

d=("adf": 1, "bdc":2,"cdsd":4)

def longest_key (d):

longest None

for key in d: if not longest or len (key) > len (longest):

longest = key

return longest

print(longest_key(d)).

When i do this the program is fine and no error occurs but

d=("adf": 1, "bdc":2,"cdsd":4) def longest_key (d):

longest = None

for key in d: if len (key) > len (longest):

longest key

return longest print (longest_key(d)).

When i do this it shows type error object of type Nonetype has no len()

1

There are 1 answers

0
Tyler Liu On

You set longest to None and you're trying to get its length. In the second function, it errors because you don't have the if not longest condition. The first function works because short circuit evaluation means that len(longest) will not be evaluated.