Recently, I have noticed an inconsistency while concatenating lists.
So if I use the + operator, it doesn't concatenates list with any object of different type. For example,
l = [1,2,3]
l = l + (4,5) #TypeError: can only concatenate list (not "tuple") to list
But, if I use the += operator, it neglects the type of the object. For example,
l = [1,2,3]
l += "he" #Here, l becomes [1, 2, 3,"h", "e"]
l += (56, 67) #Here, l becomes [1, 2, 3,"h", "e", 56, 67]
So, is it just the semantics of the language or some other reason?