Python字符串详细介绍

1066次阅读  |  发布于5年以前

简介

字符串序列用于表示和存储文本,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.基本操作

复制代码 代码如下:

2.类型转换

字符串和数字相互转换

字符串到数字int/float/long

数字到字符串str

复制代码 代码如下:

int(42)
42
int('42')
42
str(42)
'42'
float('42.0')
42.0
str(42.0)
'42.0'

或者使用string模块的函数

s:进行转换的字符串, base:可选,目标进制

复制代码 代码如下:

import string
string.atoi(s[,base]) #base默认为10,如果为0,那么s就可以是012或0x23这种形式的字符串,如果是16那么s就只能是0x23或0X12这种形式的字符串


string.atol(s[,base]) #转成long

string.atof(s[,base]) #转成float

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8