Python字符串
Python 字符串初识
Python 中的字符串就是字符的序列(这和在大多数编程语言中是一样的),可以包含字母、数字、标点和空格。我们把字符串放在引号中,这样 Python 就会知道字符串从哪里开始到哪里结束。例如,下面是一个常见的字符串:
>>> "Hello World!"
'Hello World!'
要输入字符串,只要输入一个双引号
"
,后面跟着想要的字符串文本,然后用另一个双引号结束字符串。也可以使用单引号'
替代双引号。但是为了简单起见,在本教程中,我们只使用双引号。提示:大家要注意,这里的单引号和双引号都是英文(半角字符)的单引号和双引号。
字符串的存储
字符串也可以存储到变量中,就像我们对数字所做的一样。
>>> myString="This is my string"
>>> myString
'This is my string'
提示:Python 作为一门动态语言,其变量的类型可以自由变化。这个特性叫作动态类型,它提高了编写代码的效率,但也增加了阅读代码和维护代码的难度。
如果一个变量之前存储过字符串,这并不会影响到我们随后为其分配一个数字;同样,如果一个变量之前存储过数字,也不会影响到为其分配一个字符串。例如,我们先将变量 myString 赋值为数字 5,这个时候我们可以看到,myString 的内容是一个数字。接下来,我们为 myString 重新赋值,这次将一个字符串 "This is a string" 赋给变量,可以看到,myString 的内容已经成了字符串。
>>> myString=5
>>> myString
5
>>> myString="This is a string"
>>> myString
'This is a string'
字符串与数字的判断
如果把一个数字放在引号中会怎么样呢?它是字符串还是数字呢?在 Python 中,如果把一个数字放在引号中,它会被当成是字符串。正如我们前面提到的,字符串就是一连串的字符(即使其中偶尔有一些字符是数字)。例如:
>>> numberEight=8
>>> stringEight="8"
为了看出它们之间的区别,我们把它们相加:
>>> numberEight+numberEight
16
>>> stringEight+stringEight
'88'
Python 字符串连接
正如你所见到的,我们可以对字符串使用 + 操作符,但是结果与对数字使用 + 操作符大相径庭。使用 + 连接两个字符串时,会将第二个字符串附加到第一个字符串的末尾,生成一个新的字符串,如下所示:
>>> greeting="Hello "
>>> name="Johnson"
>>> greeting+name
'Hello Johnson'
这里需要注意一下,Python 是不会自动给字符串添加一个空格的,所以为了能隔开两个单词,我们需要在第一个字符串末尾增加一个空格。
Python 字符串的方法
方法是 Python 可以对数据执行的函数。例如,在下面示例中,在 myName. title() 中,myName 后面的句点
.
让 Python 对变量 myName 执行方法 title 所指定的操作。
>>> myName="johnson"
>>> myName.title()
'Johnson'
接下来,我们再来看几个经常用到的字符串方法。
title()
title() 方法以首字母大写的方式显示每个单词,也就是将每个单词的首字母都改为大写。在上面示例中,我们用 title() 方法将 "johnson" 改变为 "Johnson"。upper()
upper() 方法将字符串全部改写为大写字母 ,在下面示例中,upper() 方法将 "johnson" 修改为 "JOHNSON"。
>>> myName.upper()
'JOHNSON'
lower()
lower() 方法将字符串全部改写为小写字母,在下面示例中,lower() 方法将 "JOHNSON" 改为了 "johnson"。
>>> "JOHNSON".lower()
'johnson'