Python字符串

一、字符串的定义:

第一种方式:

 Str1 = 'hello world!'     #单引号

第二种方式:

 Str2 = "hello world!"     #双引号

第三种方式:

 Str3 = """hello world!"""  #三引号

三引号有三种功能
1.批量注释
2.字符串格式化
3.函数的doc文档

请看下面的例子:

 In [1]: type("s")
 Out[1]: str

 In [2]: type("string")
 Out[2]: str

说明单个字符在 Python 中也是作为一个字符串使用。

二、转义字符

一个反斜杠加一个单一字符可以表示一个特殊字符,通常是不可打印的字符

 \n: 代表换行符 
 \": 代表双引号本身
 \t: 代表tab符 
 \': 代表单引号本身

三、字符串的操作

1.索引Str[i]

获取特定偏移的元素
给出一个字符串,可输出任意一个字符,如果索引为负数,相当于从后向前数。

           索引理解
 字符串  s  t   r    i  n  g  
 索引     0  1  2   3  4  5   
 索引    -6 -5 -4 -3 -2 -1  
 In [3]: Str = "string"

 In [4]: Str[0] #第0个字符(实际是第1个,索引从0开始计算,为了避免混淆,以索引为标准)
 Out[4]: 's'

 In [25]: Str[-1]
Out[25]: 'g'

In [26]: Str[-2]
Out[26]: 'n'
2.切片Str[i:j]

Python访问子字符串,可以使用索引来截取字符串,这种操作叫做切片
切片提取对应的部分作为一个序列,上边界并不包含在内,如果没有给出切片的边界,切片的下边界默认为0,上边界为字符串的长度
扩展的切片S[i:j:k],其中i,j含义同上,k为递增步长
如下:

 In [5]: Str[0:2] #从第0到第1个字符
 Out[5]: 'st'

 In [9]: Str[0:2:2] #从第0到第1个,步长为2
 Out[9]: 's'

 In [10]: Str[::-1] #字符串倒序,步长为-1
 Out[10]: 'gnirts'

 In [12]: Str[1:5] #从第1个到第4Out[12]: 'trin'

 In [13]: Str[1:5:2] #从第1个到第4个,步长为2
 Out[13]: 'ti'

s[:]获取从偏移量为0到末尾之间的元素,是实现有效拷贝的一种方法

 In [27]: Str[:]
 Out[27]: 'string'
3.重复Str * n
 In [32]: Str * 3
 Out[32]: 'stringstringstring'
4.连接Str + s
 In [36]: s = "python"

 In [37]: Str + s
 Out[37]: 'stringpython'
5.计算长度
 In [38]: len(Str)
 Out[38]: 6
6.成员操作符:判断子串
 In [29]: "r" in Str
 Out[29]: True

 In [30]: "a" in Str
 Out[30]: False

 In [31]: "a" not in Str
 Out[31]: True
7.原始字符串

所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母”r/R”(不区分大小写)以外,与普通字符串有着几乎完全相同的语法。

 In [39]: print r"\n"
 \n
8.字符串的类型转换
 str(obj) 将其他类型内容转换为字符串
 int(obj) 将字符串转换为为整数
 float(obj) 将字符串转换为浮点型
 long(obj) 将字符串转换为长整型

特别注意:所有对字符串的操作的结果,是没有保存的,要使用必须要赋值给一个变量保存!

四、字符串的内置方法

1.字符串全部内置方法
 In [67]: s = "string"

 In [68]: s.
 s.capitalize  s.format      s.isupper     s.rindex      s.strip
 s.center      s.index       s.join        s.rjust       s.swapcase
 s.count       s.isalnum     s.ljust       s.rpartition  s.title
 s.decode      s.isalpha     s.lower       s.rsplit      s.translate
 s.encode      s.isdigit     s.lstrip      s.rstrip      s.upper
 s.endswith    s.islower     s.partition   s.split       s.zfill
 s.expandtabs  s.isspace     s.replace     s.splitlines  
 s.find        s.istitle     s.rfind       s.startswith 
2.字符串常用内置方法
 str.capitalize() #将字符串首字母大写,并返回新的首字母大写后的字符串
 str.center(width[,fillchar]) #返回一个长为width的新字符串,在新字符串中原字居中,其他部分用fillchar指定的符号填充,未指定时通过空格填充
 str.count(sub[, start[, end]]) -> int #返回sub在str中出现的次数,如果start与end指定,则返回指定范围内的sub出现次数
 str.endswith(suffix[, start[, end]]) #判断字符串是否以suffix结束,如果start和end指定,则返回str中指定范围内str子串是否以suffix结尾,如果是,返回True,否则返回False
 str.startswith(prefix[, start[, end]]) #判断字符串是否以prefix开头,规则同上
 str.find(sub[, start[, end]]) #判断sub是否在str中,存在返回索引值,不存在返回-1.
 str.index(sub[, start[, end]]) #与find方法函数功能相同,如果sub不存在时抛出ValueError异常
 str.isalnum() #判断是否都是字母或数字
 str.isalpha() #判断是否都是字母
 str.isdigit() #判断是否都是数字
 str.islower() #判断是否都是小写
 str.isspace() #判断是否都是英文空格
 str.istitle() #判断是不是都是标题(有大小写)
 str.isupper() #判断是不是都为大写字母字符串常用操作
 str.join(seq) #以str作为分隔符,将序列seq中的所有元素合并为一个新的字符串。
 str.replace(old, new[, count]) #将str中的old字符串替换为new字符串,并将替换后的新字符串返回,如果count指定,则只替换前count个字符串字符串常用操作
 str.split([sep[, maxsplit]]) #以sep字符串作为分割符对str进行切割,默认为空格,maxsplit代表切割的此处字符串常用操作
 str.strip([chars]) #返回一字符串,将str中首尾包含指定的chars字符删除的字符串,未指定时,删除首尾的空格。

特别注意:所有对字符串的内建函数操作的结果,是没有保存的,要使用必须要赋值给一个变量保存!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值