python学习笔记(三)

字符串:

1.计算字符串的长度:len()函数。默认情况下,不区分英文、数字和汉字,所有字符按一个字符计算。获取字符串实际所占的字节数,可以使用encode()方法,下面是UTF-8和GBK编码的长度

2. 截取字符串:string[start : end : step],start截取的第一个字符的索引,若不指定,默认为0;end截取的最后一个字符的索引,若不指定,默认为字符串的长度;step切片的步长,若省略则默认为1。

3. 分隔字符串:采用split()方法,str.split(seq, maxsplit),seq用于指定分隔符,默认为none即所有空字符;maxsplit用于指定分隔的次数。

4. 合并字符串:使用join()方法实现,strnew = string.join(iterable),string用于指定合并时的分隔符。

5. 检索字符串:(1)count()方法用于检索指定字符在另一个字符串中出现的次数,格式如下,str.count(sub[ , start[, end] ]),sub表示要检索的子字符串,start表示检索范围的起始位置的索引,若                                    不指定则从头开始,end表示检索范围的结束位置的索引,若不指定则一直检索到结尾。(2)find()方法用于检索是否包含指定的子字符串,若不存在则返回-1,否则返回首次出现                                   该子字符串的索引。(3)index()方法也是用于检索是否包含子字符串,只是当指定的字符串不存在时会抛出异常。还有rindex()方法,只是从右边开始查找。(4)startswith()方法                                   用于检索字符串是否以指定子字符串开头,若是返回True,否则返回False。(5)endswith()方法用于检索字符串是否以指定子字符串结尾,若是返回True否则返回False。

6. 字母的大小写转换lower()upper()方法。

7. 去除字符串中的空格和特殊字符strip()方法去除字符串左右两边的空格和特殊字符,lstrip()方法去除字符串左边的空格和特殊字符;rstrip()方法去除字符串右边的空格和特殊字符。                 

    str.strip([chars]),chars用于指定要去除的字符,可以指定多个。若不指定则默认去除空格、制表符“\t”、回车符“\r”、换行符“\n”等。

8. 格式化字符串

(1)使用%操作符。语法格式为:‘%[-][+][0][m][.n]格式化字符’%exp,

-用于指定左对齐,正数前方无符号,负数前方加负号;

+用于指定右对齐,正数前方加正号,负数前方加负号;

0表示右对齐,正数前方无符号,负数前方加负号,用0填充空白处;

M表示占有宽度;

.n表示小数点后保留的位数;

格式化字符:用于指定类型,%s表示字符串、%c表示单个字符、%r表示字符串(采用       repr()显示)、%o表示八进制整数、%d表示十进制整数、%e表示指数(基底写成e)、%x表示十六进

制整数、%f表示浮点数、%%表示字符%;

exp表示要转化的项,若要指定的项有多个,需要通过元组的形式进行指定。

(2)使用format()方法,语法格式为:str.format(args),args用于指定要转化的项,若有多项,用逗号进行分隔。

创建模板语法格式为:{[index][:[[fill]align][sign][#][width][.precision][type]]},

index用于指定要设置格式的对象在参数列表中的索引位置,从0开始,若省略则根据值的先后顺序自动分配;

fill用于指定空白处填充的字符;

align用于指定对齐方式(<表示左对齐,>表示右对齐,=表示右对齐,只对数字类型     有效,^表示居中);

sign用于指定有无符号数(值为+表示正号加正号,负号加负号;值为-表示正数不变,负数加负号;值为为空格时表示正数加空格,负数加负号);

#对于二进制、八进制、十六进制;

width用于指定所占宽度;

.precision用于指定保留的小数位数;

type用于指定类型。

字符串与二进制之间转换:

9. 正则表达式:记录文本规则的代码。

  • 行定位符,“^”表示行的开始,“$”表示行的结尾

  • 元字符,“.”匹配除换行符以外的任意字符;“\w”匹配字母、数字、下划线或汉字;“\W”匹配除数字、字母、下划线或汉字以外的字符;“\s”匹配单个的空白符(包括Tab键和换行符);“\S”匹配单个空白键以外的字符;“\b”匹配单词的开始或结束,单词的分界符通常是空格,标点符号或者换行;“\d”匹配数字。

  • 限定符,“?”匹配前面的字符零次或一次;“+”匹配前面的字符一次或多次;“*”匹配前面的字符零次或多次;“{n}”匹配前面的字符n次;“{n,}”匹配前面的字符最少n次;“{n,m}”匹配前面的字符最少n次,最多m次。

  • 在python中使用正则表达式时,是将其作为模式字符串使用的。

10. 使用re模块实现正则表达式操作import re

  • 匹配字符串。

match()方法进行匹配,用于从字符串开始处进行匹配,若在起始位置匹配成功,则返回Match对象,语法格式为:re.match(pattern, string, [flags])pattern表示模式字符串,由要匹配的正则表达式

转换而来;string表示要匹配的字符串;flags可选参数,表示标志位,用于控制匹配方式,如是否区分大小写。

 

       search()方法进行匹配,用于在整个字符串中搜索第一个匹配的值。语法格式为:re.search(pattern, string, [flags])。

       findall()方法用于在整个字符串中搜索所有符合正则表达式的字符串,并以列表的形式返回,否则返回空列表,语法格式为:re.findall(pattern, string, [flags])。

  • 替换字符串。sub()方法用于实现字符串的替换,语法格式为:

re.sub(pattern, rep1, string, count, flags),pattern表示模式字符串;rep1表示替换的字符串;string表示要被查找替换的原始字符串;count可选参数,表示模式匹配后替换的最大次数,默认为0,

表示替换所有的匹配。

  • 使用正则表达式分隔字符串。split()方法用于实现根据正则表达式分隔字符串,并以列表的形式返回。语法格式为:re.split(pattern, string, [maxsplit], [flags])。maxsplit可选参数,表示最大的拆分次数。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值