自学python之字符串

1.字符串一个不可变的字符序列

        字符串驻留机制,python的驻留机制对相同的字符串只保留一份拷贝,后续创建相同字符串时,不会开辟新空间,而是把该字符串的地址赋给新创建的变量

        下边代码内存地址相同

a='python'

c='''python'''

d='python'

print(id(a))

print(id(c))

print(id(d))

                

        驻留机制的几种情况:

                字符串的长度为0或者1时;

                符合标识符的字符串(字母数字下划线);

                字符串只在编译时进行驻留,不是运行的时候;

                [-5,256]之间的整数数字。

                下方代码因为含有非标识符,所以标识不同,注意只是编译的时候不同,不是运行的时候

                

        在进行字符串拼接时,建议使用str类型的join的方法,不是+法,因为join方法先计算出字符的长度,再进行拷贝,值更新一次对象,效率比加法的时候高

2.字符串的查询操作

        Index()函数:

                查找子串第一次出现的位置,如果子串不存在,则显示valueError

        rindex()函数:

        查找子串最后一次出现的位置,如果查找的子串不存在,则显示valueError

        推荐使用以下两种:

        find()函数:

                查找子串第一次出现的位置,如果查找的子串不存在,返回-1

        rfind()函数:

                查找子串最后一次出现的位置,如果字串不存在,则返回-1。

3.字符串大小写转换

        upper()函数:

                把所有字符都变成大写字符

        lower()函数:

                 把所有字符变成小写字符

        swapcase()函数:

                把字符串中的大写字母转成小写字母,把所有小写字母转成大写字母

        capitalize()函数:

                把第一个字符转换成大写,把其余字符转化成小写

        title()函数:

                把每个单词的第一个字符转换成大写,把每个单词的剩余字符转换成小写

4.字符串内容对齐操作

        center()函数:

        居中对齐,第1个参数指定宽度,第2个参数指定填充符,第2个参数是可选的,默认是空格,如果设置宽度小于实际宽度则返回原字符串

        ljust()函数:

        左对齐,第1个参数指定宽度,第2个参数指定填充符,第2个参数是可选的,默认是空格,如果设置宽度小于实际宽度则返回原字符串

        rjust()函数:

        右对齐,第1个参数指定宽度,第2个参数指定填充符,第2个参数是可选的,默认是空格,如果设置宽度小于实际宽度则返回原字符串

        zfill()函数:

        右对齐,左边用0填充,该方法只接受一个参数,用于指定字符串的宽度,如果设置宽度小于实际宽度则返回原字符串

        

        注意此时的填充

5.字符串的劈分操作

        split()函数:

        从字符串的左边开始劈分,默认的劈分字符是空格字符,返回的值是一个列表

        通过参数sep来指定劈分符

        通过参数maxsplit来指定最大的劈分次数

        rsplit()函数:

        从字符的右边开始劈分

6.字符串判断方法

        isdentifier()函数:

                判断字符串是不是合法的,合法则包括字母数字下划线

        isspace()函数:

                判断字符是否全部由空白字符组成

        Isalpha()函数:

                判断字符都是由字母组成

        ​​​​​​​        

        Isdecimal()函数:

                判断字符串是否都是由十进制数组成

        Isnumeric()函数:

                判断指定的字符串是否全部由数字组成,认为罗马数字也是数

        ​​​​​​​        

        Isalnum()函数:

                判断字符串是否全部由字母和数字组成,罗马数字也是数

        ​​​​​​​        

7.字符串的替换与合并

        replace()函数:

        第一个参数指定被替换的子串,第二个参数指定替换子串的字符串,该方法返回替换后得到的字符串,替换前的字符串不发生变化。第三个参数指定最大替换次数。产生了一个新对象

        

        join()函数:

                将列表或元组的字符串合成一个字符串

        

8.字符串的比较

        比较规则:先比较两个字符串的第一个字符,如果相等则继续比较下一个字符,依次比较下去,直至两个字符串中的字符不相等时,其比较结果就是两个字符串的比较结果,两个字符串中的所有后续字符将不再被比较

        比较原理:两字符比较时,比较的是原始值,调用内置函数ord即可,chr可以通过数字得到对应字符

        

        ==比较的是值,is比较的是id即标识

9.字符串切片

        不具备增删改操作,切片操作将产生新的对象

        

        以下代码从-6开始一直到最后一个元素,注意只是索引从-6开始,并不是到反向的最后一个

        

10.格式化字符串

        方式一:

                %作为占位符

                %s——字符型,%i或者%d——整数,%f——浮点数

name='张三'

age=20

print('我叫%s,今年%d'%(name,age))

        方式二:

                {}作为占位符

print('我叫{0},今年{1}岁了'.format(name,age))

print(f'我叫{name},今年{age}suil')

控制精度:

下方的.3代表的不是三位小数而是三位数

        ​​​​​​​        

加上f才代表是三位小数

        ​​​​​​​        

                同时设置宽度为10,一共三位小数

        ​​​​​​​        

11.编码与解码

        编码:

                GBK格式,一个中文占两个字节

                UTF-8格式,一个中文占三个字节

        

        解码:

                decode()函数进行解码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CHENG__ZI_#

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值