ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python 字符串

2022-07-18 22:34:40  阅读:129  来源: 互联网

标签:检索 string python 指定 去除 字符串 方法


字符型(字符串)

  

字符串常用操作

拼接字符串

  拼接字符串需要使用‘+’运算符可完成对多个字符串的拼接。如

 字符串不允许直接与其他类型的数据拼接,需要将其他类型转换为字符串才可以进行拼接。

 

计算字符串的长度

  不同的字符所占字节数不同,在python中数字、英文、小数点、下划线和空格占一个字节,一个汉字可能会占2~4个字节,取决于采用的编码。汉字在GBK/GB2312编码中占2个字节,在UTF-8/Unicode编码中一般占用3个字节(或4个字节)。python中默认的编码格式是UTF-8,即一个汉字占3个字节。

  python中,提供了内置函数len()计算字符串的长度,默认情况下通过len()函数计算字符串的长度时,不区分英文、数字和汉字,所有字符都按照一个字符来计算

  如需实际获取字符串所占的字节数,可以通过encode()方法进行编码后再进行获取。如下:

 

 

截取字符串

  字符串也属于序列,要截取字符串也可以采用切片方法实现:

1 string[start:end:step]
2 # string:  表示要截取的字符串
3 # start:切片开始的位置(包括该位置),不指定时则默认为0
4 # end:  切片截止的位置(不包括该位置),不指定时则默认其序列的长度
5 # step: 切片的步长,不指定时则默认为1

  例:

 

分割字符串

  分割字符串是把字符串分割为列表,通过split() 函数可以实现字符串分割,也就是把一个字符串按照指定的分隔符切分为列表。split()语法格式:

string.split(sep, maxsplit)
   
# string: 表示要进行分割的字符串
# sep: 用于指定分隔符,可以包含多个分隔符,默认为None,即所有空字符串(包括空格、换行符\n、制表符\t等)
# maxsplit:可选参数,用于指定分割的次数,如果不指定或者为-1,则分隔次数没有限制,否则返回结果列表的元素个数,个数最多为maxsplit+1


# 在split()方法中如果不指定sep参数那么也不能指定maxsplit参数

  例:

 

合并字符串

  合并字符串与拼接字符串不同,它可以将多个字符串采用固定的分隔符连接在一起。合并字符串可以使用字符串对象的join() 方法实现,语法格式如:

newstr = string.join(iterable)

# newstr: 表示合并后生成新的字符串
# string: 字符串类型,用于指定合并时的分隔符(合并字符串时的连接符)
# iterable:可迭代的对象,该迭代的对象中的所有元素将被合并一个新的字符串,string作为边界点分割出来(要合并的对象)

  例:

 

检索字符串

  1、count() 方法

  count() 方法用于检索指定字符串中在另一个字符串中出现的次数,如果检索的字符串不存在,则返回0,否则返回出现的次数。语法格式:

str.count(sub[, start[, end]])

# str: 表示原字符串
# sub: 表示要检索的子字符串
# start: 可选参数,表示检索范围的起始位置的索引,如不指定,则从头开始检索
# end: 可选参数,表示检索范围的结束位置的索引,如不指定,则一直会检索到结尾

  例:

   #  指定位置检索用法不详

  2、find() 方法

  find() 方法用于检索是否包含指定的子字符串,如果检索的字符串不存在免责返回-1,否则返回首次出现该子字符串时的索引。语法格式:

str.find(sub[, start[, end]])

# str: 表示原字符串
# sub: 表示要检索的子字符串
# start: 可选参数,表示检索范围的起始位置的索引,如不指定,则从头开始检索
# end: 可选参数,表示检索范围的结束位置的索引,如不指定,则一直会检索到结尾

  例:

  #  指定位置检索用法不详

  如果只是想要判断指定的字符串是否存在,也可以通过关键字in来实现,存在则返回True,否则返回False。

  python还提供了rfind() 方法,其作用和find() 方法类似,只是从字符串右边开始检索。

  3、index() 方法

  index() 方法同find() 方法类似,也是用于检索是否包含指定的子字符串。只不过是用index() 方法时,当指定的字符串不存在时则会抛出异常。语法格式:

str.index(sub[, start[, end]])

# str: 表示原字符串
# sub: 表示要检索的子字符串
# start: 可选参数,表示检索范围的起始位置的索引,如不指定,则从头开始检索
# end: 可选参数,表示检索范围的结束位置的索引,如不指定,则一直会检索到结尾

  python还提供了rindex() 方法其作用同index() 方法类似,只是重字符串右边开始检索。

  4、startswith() 方法

  startswith() 方法用于检索字符串是否以指定的子字符串开头,如果是则返回True,否则返回False。语法格式:

str.startswith(sub[, start[, end]])

# str: 表示原字符串
# sub: 表示要检索的子字符串
# start: 可选参数,表示检索范围的起始位置的索引,如不指定,则从头开始检索
# end: 可选参数,表示检索范围的结束位置的索引,如不指定,则一直会检索到结尾

  5、endswith() 方法

  endswith()  方法用于检索字符串是否以指定的子字符串结尾,如果是则返回True,否则返回False。语法格式:

str.endswith(sub[, start[, end]])

# str: 表示原字符串
# sub: 表示要检索的子字符串
# start: 可选参数,表示检索范围的起始位置的索引,如不指定,则从头开始检索
# end: 可选参数,表示检索范围的结束位置的索引,如不指定,则一直会检索到结尾

 

字符串字母大小写的转换

  在python中,字符串对象提供了lower() 方法和 upper() 方法用于字母大小写的转换,可将大写字母转换为小写字母或将小写字母转换为大写字母。

  1、lower() 方法

  lower() 方法用于将字符串中的大写字母转换为小写字符,如果字符串中没有需要转换的字符,则将原字符串返回。

 

  2、upper() 方法

  upper() 方法用于将字符串中的大写字母转换为小写字符,如果字符串中没有需要转换的字符,则将原字符串返回。

 

去除字符串中的空格和特殊字符

  python中提供的的strip() 方法可以去除字符串左右两侧的空格和特殊字符,也可以使用lstrip() 方法去除字符串左边的空格和特殊字符,使用rstrip() 方法可以去除字符串右边的空格和特殊字符。这里的特殊字符是指制表符 \t、回车符\r、换行符\n。

  1、strip() 方法

  strip() 方法可以去除字符串左右两侧的空格和特殊字符,语法格式:

string.strip([chars])

# string: 表示要去除空格或特殊字符的字符串
# chars:可选参数,用于指定要去除的字符,可以指定多个。如果设置chars为‘@.’ ,则去除左右两侧包括的‘@’和‘.’ ,如果不指定chars参数吗,则默认去除空格及特殊字符。

  例:

 

  2、lstrip() 方法

  lstrip() 方法用于去除字符串左侧的空格和特殊字符,语法格式:

string.lstrip([chars])

# string: 表示要去除空格或特殊字符的字符串
# chars:可选参数,用于指定要去除的字符,可以指定多个。如果设置chars为‘@.’ ,则去除左侧包括的‘@’和‘.’ ,如果不指定chars参数吗,则默认去除空格及特殊字符。

  例:

 

  3、rstrip() 方法

  rstrip() 方法用于去除字符串右侧的空格和特殊字符,语法格式:

string.rstrip([chars])

# string: 表示要去除空格或特殊字符的字符串
# chars:可选参数,用于指定要去除的字符,可以指定多个。如果设置chars为‘@.’ ,则去除右侧包括的‘@’和‘.’ ,如果不指定chars参数吗,则默认去除空格及特殊字符。

  例:

 

格式化字符串

  格式化字符串是指先制定一个模板,在这个模板中预留几个空位,然后在根据需要填上相对应的内容。这些空位需要通过指定的符号标记(也称为占位符),而这些符号还不会显示出来。python中提供了如下两种方法格式化字符串:

  1、使用'%' 操作符

常用格式化字符
格式化字符 说明
%s 格式化字符串(字符串采用str() 显示)
%r 格式化字符串(字符串采用rep() 显示)
%d 格式化十进制整数
%f 格式化浮点数
%F 格式化浮点数
··· ···
··· ···
··· ···
··· ···

 

  由于其内容过多,只演示些常用的格式化字符:

 

  2、使用字符串对象的format() 方法

str.format(args)

# str: 用于指定字符串的显示样式(模板)
# args: 用于指定要转换的项,如果有多项则使用逗号分隔

  在创建模板时需要使用'{}'和':' ,指定占位符,例如:

 

字符串编码转换

···

 

 

标签:检索,string,python,指定,去除,字符串,方法
来源: https://www.cnblogs.com/likeyan/p/16475616.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有