Python中的字符串

说明:本博文主要记录Python学习过程中的知识点(主要针对Python编程语法)。是我在看《零基础学Python》(明日科技出版)这本书时所做的笔记。

  • 字符串的拼接
    可以使用加号“+”运算符拼接字符串。
str1 = "abc"
str2 = "123"
str3 = str1 + str2
  • 将整数转换为字符串
num1 = 123456
str1 = str(num)
  • 字符串的长度
    计算字符串的长度时需要知道编码格式,因为对于汉字而言不同的编码格式一个汉字可能占用的字节数量不同。
len(string) # 计算字符串的长度
len(string.encode()) # 计算UTF-8编码的字符串长度
len(string.encode('gbk') # 计算gbk编码的字符串长度
  • 截取字符串
    通过切片方式截取
string[start:end:step]
# string:表示要截取的字符串
# start:截取字符的起点(包括该字符),如果不指定从0开始
# end:截取字符的终点(不包括该字符),如果不指定为整个字符串的长度
# step:截取的步长,如果不指定步长为1.
  • 分割字符串
    采用该方法是将字符串分割为字符串列表,分割后的字符串列表中不包含分隔符。
str.split(separator, max_split_num)
# str:用于分割的字符串
# separator:分隔符,可以包含多个字符。如果不指定则为所有空字符(空格符、换行符、制表符等)
# max_split_num:最大分割次数,如果不指定则可以无限次分割。
  • 合并字符串
newstr = string.join(iterable)
# newstr:合并后的新字符串
# string:字符串,用于指定合并的分隔符
# iterable:可迭代对象,该迭代对象中的所有元素将被合并成一个新的字符串
  • 字符串操作的常用方法
  1. count()方法
    用于获取一个字符串在另一个字符串中出现的次数。如果没有出现,则返回0;如果出现了,则返回出现的次数。
str.count(sub, start, end)
# str:表示原字符串
# sub:表示要检索的字符串
# start:可选参数,字符串检索的起点,如果不指定则从0开始
# end:可选参数,字符串检索的终点,如果不指定则为字符串的结尾
  1. find()方法
    用于搜索指定字符串,在原字符串中出现的索引值。如果没有搜索到,则返回-1;如果搜索到了,则返回字符串首次出现的索引值。
str.find(sub, start, end)
# str:表示原字符串
# sub:表示需要检索的字符串
# start:可选参数,表示字符串检索的起点。如果没有指定,则表示从0开始检索。
# end:可选参数,表示字符串检索的终点。如果没有指定,则表示字符串的结尾。
  1. index()方法
    该方法同find()方法一样,用于返回子字符串在原字符串中出现时的索引值。如果原字符串不包含子字符串则会抛出异常。
str.index(sub,start,end)
# str:原字符串
# sub:子字符串
# start:可选参数,搜索的起点
# end:可选参数,搜索的结束点
  1. startswith()方法
    用于判定原字符串是否是以指定的字符串开头,如果是则返回True,如果不是则返回False。
str.startswith(sub, start, end)
# str:原字符串
# sub:子字符串
# start:可选参数,表示搜索的起点。
# end:可选参数,表示搜索的终点。
  1. endswith()方法
    用于检索字符串是否以指定的字符串结尾,如果是则返回True,如果不是则返回False。
str.endswith(sub, start, end)
# str:表示原字符串
# sub:表示子字符串
# start:可选参数,表示搜素的起点。
# end:可选参数,表示搜索的终点。
  1. lower()方法
    该方法用于将字符串中的大写字母转换为小写字母。
str.lower()
  1. upper()方法
    该方法用于将字符串中的小写字母转换为大写字母。
str.upper()
  • 去除字符串中的空格和特殊字符
  1. strip()方法
    去除字符串左右两侧的空格和特殊字符。
str.strip([chars])
# str:原字符串(需要去除空格和特殊字符的字符串)
# chars:可选参数,用于指定需要去除的字符,可以指定多个
  1. lstrip()方法
    去除字符串左侧的空格和特殊字符
str.lstrip([chars])
# str:需要去除空格和特殊字符的字符串
# chars:可选参数,用于指定需要去除的字符,可以指定多个
  1. rstrip()方法
    去除字符串右侧的空格和特殊字符
str.rstrip([chars])
# str:需要去除空格和特殊字符的字符串
# chars:可选参数,用于指定需要去除的字符,可以指定多个
  • 字符串的编码和解码
  1. 字符串的编码
    字符串编码使用encode()函数。该方法用于将字符串转换为二进制数据。
str.encode(encoding = "utf-8", errors = "strict")
# str:需要进行转换的字符串
# encoding: 表示编码格式。该参数为可选参数,如果不指定默认是UTF-8,也可以是其他编码格式。当只有一个参数时可以省略“encoding=”,直接写编码格式。
# errors : 可选参数,用于指定错误处理方式,默认是strict。

程序示例:

str1 = "我爱Python"
bytes1 = str1.encode(encoding='gbk')
print(str1)
print(bytes1)
# 输出结果为:
'''
我爱Python
b'\xce\xd2\xb0\xaePython'
'''
  1. decode()方法
    该方法是bytes对象的方法。用于将二进制数据转换为字符串。该方法是encode()方法的逆过程。
bytes.decode(encoding='utf-8',errors = 'strict')
# bytes:需要转换的二进制数据
# encoding: 表示编码格式。该参数为可选参数,如果不指定默认是UTF-8,也可以是其他编码格式。当只有一个参数时可以省略“encoding=”,直接写编码格式。
# errors : 可选参数,用于指定错误处理方式,默认是strict。

程序示例:

str1 = "我爱Python"
bytes1 = str1.encode(encoding='gbk')
print(str1)
print(bytes1)
str2 = bytes1.decode(encoding='gbk')
print(str2)
# 输出结果为:
'''
我爱Python
b'\xce\xd2\xb0\xaePython'
我爱Python
'''
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值