前言
字符串是所有编程语言在项目开发过程中涉及最多的一个内容。大部分项目的运行结果,都需要以文本的形式展示给客户。本文重点介绍操作字符串的基本操作方法:拼接字符串,计算字符串长度(encode()函数)和截取字符串。
一、拼接字符串
使用“+”可完成多个字符串的拼接,“+”运算符可以连接多个字符串并产生一个字符串对象,但不能直接和其他类型数据拼接。
str1="I like you"
str2=" me too"
print(str1+str2)
输出结果:
I like you me too
二、计算字符串长度
在默认情况下,通过len()函数计算字符串的长度时,不区分英文、数字和汉字,所有字符都按一个字符计算。
str='python 入门!'
print(len(str))
其中空格和标点符号等都算一个字符,输出结果:
10
在实际开发时,有时需要获取字符串实际所占的字节数
1.采用UTF-8编码,汉字占3个字节(byte)
2.采用GBK或者GB2312编码,汉字占2个字节(byte)
位(bit)、字节(byte)、字(word)是计算机数据存储的单位。
1.位是最小的存储单位,每一位存储一个1位的二进制码1或0。
2.一个字节由8位组成。1 byte = 8 bits
3.字通常为16、32或64个位组成。
可通过使用encode()函数,将字符串转换为二进制数据(bytes)即编码,再进行获取位数的字节。
str='字符串'
len1=len(str.encode(encoding='utf-8',errors='strict'))
print('"字符串"的utf—8的编码长度:',len1)
str='字符串'
len1=len(str.encode(encoding='gbk',errors='strict'))
print('"字符串"的utf—8的编码长度:',len1)
1.str:表示要进行转换的字符串。
2.encoding=‘utf-8’:可选参数,用于制定进行转码时采用的字符编码,默认为UTF-8。如果想使用简体中文,也可以设置为gb2321。当只有这一个参数时,也可以省略前面的‘encoding=’,直接写编码。
3.error= ‘strict’:可选参数,用于指定错误处理方式,其值可以是strict(遇到非法字符就抛出异常)ignore(忽略非法字符)、replace(用“?”替换非法字符)等,默认值为strict。
故输出结果为:
"字符串"的utf—8的编码长度: 9
"字符串"的utf—8的编码长度: 6
三、截取字符串
通过切片方法截取字符串的语法格式如下:string[start:end:step]
参数说明:
1.string:表示要截取的字符串。
2.start:表示要截取的第一个字符的索引(包括该字符),如果不指定,则默认为0。
3.end:表示要截取的最后一个字符的索引(不包括该字符),如果不指定则默认为字符串的长度。
4.step:表示切片的步长,如果省略,则默认为1,当省略该步长时,最后一个冒号也可以省略。
str='python 入门!'
print('str[1]= ',str[1])
print('str[1:6]= ',str[1:6])
print('str[1:-5]= ',str[1:-5])
输出结果:
str[1]= y
str[1:6]= ython
str[1:-5]= ytho