1.字符串可以看成一种特殊的元组,没错,是元组,因为字符串是不可改变的,此处的不可改变指的是不能对字符串中的元素进行修改,如赋值,分片赋值,删除等操作,而对于加法和乘法等操作则依然支持。
2.此外需要明确的是,由于元组与列表的最主要区别在于元组不可修改,故而实际上很多列表的操作,元组是不支持的,如删除操作del,索引赋值操作a[x]=i,分片赋值操作a[x:y]=b,append,extend(实际上append与extend均是在原来数据的基础上进行添加修改,而加法则是完全返回了一个全新的元组),pop操作(唯一能修改列表又返回值得方法),remove操作,reverse操作,sort操作等
3.python中,字符串格式化使用的格式化字符与C中相同,均为%,format="Hello, %s. %s enough for you?"; values=("world","Hot"); print format % values,上述例子中,values是一个元组(不能使用序列代替,否则就会被当成一个值,实际上只有元组和字典可如此使用),元组元素数目应该与格式化参数一致,括号不能省去,%优先级高于逗号,在格式化字符串里,百分号的表示方式为%%。
4.python中,字符串的格式化输出格式类似于C,在此不再赘述,附上参考博客两篇:http://blog.sina.com.cn/s/blog_78bdd9930100rmqh.html ,http://www.cnblogs.com/plwang1990/p/3757549.html。另附上示例若干:
>>>"%.*s" % (5, 'Guido van Rossum') #*号用以表明所需长度指示将在参数元组中给出
>>>'Guido'
>>>"%.2f" % pi #pi指圆周率,须先from math import pi
>>>'3.14' #之所以显示结果会有引号,是因为这个结果并非通过print输出,而是用引号表明这是一个元素而非一个值
>>>"%-010.2f" % pi
>>>'3.14 '
5.字符串方法:
s.find(sub)#返回sub子串第一次出现的索引
symbol.join(strList)#将字符串列表用symbol连接起来
s.split(symbol)#与join相对应,将字符串s按照symbol分割开来,得到的是一个列表
s.lower(),s.upper()#分别返回字符串s的小写串和大写串,s并未发生改变
s.replace(s1,s2)#将s中的s1替换成s2
s.strip()#将s左右两侧的空格去除
s.translate(table)#将s中的字符按照table(需要采用maketrans函数提前制作一张转换表)转换规则进行分别替换