>>> aList = []
>>> aList += 'chicken'
>>> aList
['c', 'h', 'i', 'c', 'k', 'e', 'n']
>>> aList = aList + 'hello'
Traceback (most recent call last):
File "<pyshell#16>", line 1, in <module>
aList = aList + 'hello'
TypeError: can only concatenate list (not "str") to list
I don't get why doing a list += (something)
and list = list + (something)
does different things. Also, why does +=
split the string up into characters to be inserted into the list?
list.__iadd__()
can take any iterable; it iterates over it and adds each element to the list, which results in splitting a string into individual letters. list.__add__()
can only take a list.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With