本節書摘來自異步社群《像計算機科學家一樣思考python(第2版)》一書中的第2章,第2.6節,作者[美] allen b. downey,趙普明 譯,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。
通常來說,字元串不能進行數學操作。即使看起來像數字也不行。下面的操作是非法的:
<code>'2' - '1' 'eggs'/'easy' 'third'*'a charm'</code>
但有兩個例外:+和*。
操作符+進行字元串拼接(string concatenation)操作,意即将前後兩個字元首尾連接配接起來。例如:
操作符也适用于字元串;它進行重複操作。例如,'spam' 3的結果是<code>'spamspamspam'</code>。如果*的兩個操作對象之一是字元串,那另一個必須是整數。’
字元串的+和的應用,實際上和數字的加法與乘法類似。就像43與4+4+4相等一樣,我們預期'spam'*3與'spam'+'spam'+'spam'也相等,實際也确實如此。另一方面,字元串的拼接與重複操作和整數的加法與乘法操作也有很大的不同。你能夠想出加法的一個屬性,字元串拼接操作并不支援嗎?