2.6 - Operações com strings

Em geral, não é possível executar operações matemáticas com strings, mesmo se elas parecerem números, então coisas assim são ilegais:

'2'-'1'    'eggs'/'easy'    'third'*'a charm'

Mas há duas exceções, + e *.

O operador + executa uma concatenação de strings, ou seja, une as strings pelas extremidades. Por exemplo:

>>> first = 'throat'
>>> second = 'warbler'
>>> first + second
throatwarbler

O operador * também funciona em strings; ele executa a repetição. Por exemplo, 'Spam'*3 é 'SpamSpamSpam'. Se um dos valores for uma string, o outro tem de ser um número inteiro.

Este uso de + e * faz sentido por analogia com a adição e a multiplicação. Tal como 4 * 3 é equivalente a 4 + 4 + 4, esperamos que 'Spam' * 3 seja o mesmo que 'Spam'+'Spam'+'Spam', e assim é. Por outro lado, há uma diferença significativa entre a concatenação de strings e a repetição em relação à adição e à multiplicação de números inteiros. Você consegue pensar em uma propriedade que a adição tem, mas a concatenação de strings não tem?