简介
字符串序列用于表示和存储文本,python中字符串是不可变的,一旦声明,不能改变
通常由单引号(' ),双引号(" ),三引号(''' """)包围
其中三引号可以由多行组成,编写多行文本的快捷语法,常用语文档字符串,在文件的特定地点,被当做注释。便捷的多行注释
Python实际三类字符串:
1.通常意义字符串(str)
2.原始字符串,以大写R 或 小写r开始,r'',不对特殊字符进行转义
3.Unicode字符串,u'' basestring子类
在 Python 中,字符串是“不可改变的序列”
1.不可变
2.满足序列基本操作,按位置存取,切片及索引
字符串
1.获得帮助:
代码如下:
>>> help(str)
>>> dir(str)
>>> help(str.replace)
2.不可变性
在创建之后就不能就地改变(同java),不能通过对其某一位置进行赋值而改变字符划分为不可变序列,这些字符串所包含的字符存在从左到右的顺序,不可在原处修改。python中字符串相当于一个不可变序列的列表,一旦声明,每个字符位置固定
意味着若想改变,必须新建一个!
代码如下:
>>>s='spam'
>>>s[0]='k' #TypeError
#修改字符串类似java,重新赋值
s = ‘k' + s[1:]
原始字符串
原始字符串常量,r”abcd”,(r/R)即去掉了反斜线转义机制。关闭转义机制,即/不再表示转义
用处:
1.正则表达式
用于处理正则表达式,减少反斜杠
代码如下:
p4search = re.compile(r'/s*')
2.系统路径
可以方便地表示系统路径
代码如下:
path = r'e:/book'
unicode字符串
Unicode是书写国际文本的标准方法。
Python允许你处理Unicode文本——你只需要在字符串前加上前缀u或U。例如,u"This is a Unicode string."
BP: 在你处理文本文件的时候使用Unicode字符串,特别是当你知道这个文件含有用非英语的语言写的文本。
常用操作
1.基本操作
代码如下:
+ :string1+string2 #联接字符串,将后一个串链接到前一个串的后面
Python不允许在+表达式中出现其他类型,需要手工转【这点不同于java】‘abc'+str(9)
* :string*n #创建一个新字符串重复n次原来的串
[] :string[n] #从字符串中获取对应位置的一个字符
[:] :string[n:m] #截取字符串,如果为:m从头到m如果为n:从n到尾
in :char in string #判断一个字符是否在串中,如果在返回为真(True)
not in :char not in string #判断一个字符是否不在串中,如果在返回为真(True)
新闻热点
疑难解答