软件测试技术

当前位置:首页 > 软件测试技术

《Python学习笔记》第五章

第五章 字符串

5.1 组合数据类型

到目前为止,我们已经学习了三种数据类型:intfloatstringstring类型与其它两种类型的数据还有本质的区别,因为它是由多个字符组成的。 我们可以把字符串当成一个整体,也可以取得字符串的任何部分。 

操作符“[]”从字符串中取出任意个连续的字符: 

>>> name = "qswtp" 

>>> print name[0] 

>>> print name[4] 

p >>> letter = name[2]

>>> print letter

w

>>> a = 1

>>> b = 2

>>> print name[a + b]

t

中括号内表达式是字符串的索引,它表示字符在字符串内的位置。字 符串第一个字符的索引是0,而不是1,切记。

函数len返回字符串的长度:

>>> address = "www.qswtp.com" 

>>> len(address) 

13

5.2 用for语句遍历字符串

许多操作都涉及对字符串的处理,比如从第一个字符开始,按照顺序 读取字符,然后在做相应的处理,直到最后一个字符,这个处理过程叫做 遍历。可以用while语句遍历字符串中的每一个字符:

 def travel(string): 

index = 0

while index < len(string): 

letter = string[index]

print letter

index = index + 1

当字符串的索引值等于字符串的长度时,while的条件为假,这时字符串已 经浏览完毕,退出循环。

Python提供了另一种语句for来遍历字符串,它的用法更加简练:

>>> for char in address:

print char

在每一次的循环中,依次把字符串中的一个字符赋值给变量char,然后打 印,直到最后一个字符被打印之后,for语句结束循环。

5.3 字符串片断

字符串的一部分叫做片断。选取片段与选单个取字符很相似:

>>> os = "Linux Unix FreeBSD"

>>> print os[0:5] 

Linux 

>>> print os[6:10] 

Unix >>> print os[11:18] 

FreeBSD

操作符[n:m]返回字符串的一部分,从第n个字符开始,到第m个字符结 束,包括第n个,但不包括第m个。如果你忽略了n,则返回的字符串从索 引0开始;如果忽略了m,则字符串从n开始,到最后一个字符。

>>> os = "Linux Unix FreeBSD"

>>> print os[:5]

Linux

>>> print os[11:]

FreeBSD

如果我们试图用“[]”操作符修改字符串中的任何一个字符,就像下 面车操作一样:

love = "python"

love[0] = P

你别指望着变量love的值变成“Python”,这时将产生运行时错误。这表 明字符串的值是不可改变的。最好的办法是取原字符串的一部分和添加的 字符串相加,生成一个新的字符串:

>>> str = "python"

>>> newstr = "P" + str[1:]

>>> print newstr

Python

下面的例子是从一个字符串中,寻找是否存在给出的字符:

def find(string, ch):

index = 0

while index < len(string):

if string[index] == ch:

return index

index = index + 1

return -1

如果string[index] == ch成立,函数立即返回字符的索引,并且退出循环。 如果在字符串中没有寻找的字符,程序正常退出循环,并返回-1。

我们再看一个计算字符串中出现字符次数的函数:

def count(string, ch): 

count = 0

for char in string: 

if char == ch: 

count = count + 1

print count

用for语句做一个循环,每次发现一个相等的字符,变量就加1,最后打印 出变量count。

相关内容

文章评论

表情

共 0 条评论,查看全部
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~