【Python】12.字符串

1.创建与驻留机制

  1. 创建
    字符串是一个不可变的字符序列,可使用单引号、双引号或三引号进行定义
  2. 驻留机制
    在这里插入图片描述
  • 驻留机制的几种情况(交互情况)
#1.字符串的长度为0或1时
s1 = ''
s2 = ''
print(s1 is s2)   #True

s1 = '%'
s2 = '%'
print(s1 is s2)   #True

#2.符合标识符的字符串
s1 = 'abc%'
s2 = 'abc%'
print(s1==s2)   #True

s1 = 'abc%'
s2 = 'abc%'
print(id(s1))
print(id(s2))
print(s1 is s2)   #Faulse

s1 = 'abc'
s2 = 'abc'
print(s1 is s2)   #True

#3.字符串只在编译时进行驻留,而非运行时
a = 'abc'
b = 'ab'+'c'
c = ''.join(['ab','c'])
print(a is b)   #True
print(a is c)   #False


#4.[-5,256]之间的整数数字
a = -5
b = -5
print(a is b)   #True
a = -6
b = -6
print(id(a))
print(id(b))
print(a is b)   #False

PyCharm对字符串进行了优化处理
sys中的intern方法强制2个字符串指向同一个对象

2.常用操作

  1. 查询操作
    在这里插入图片描述

  2. 大小写转换操作
    在这里插入图片描述

  3. 字符串对齐
    在这里插入图片描述

  4. 字符串劈分
    在这里插入图片描述

  5. 字符串的判断
    在这里插入图片描述

  6. 替换 与 合并
    在这里插入图片描述

3.比较

在这里插入图片描述

4.切片操作

5.格式化字符串

在这里插入图片描述

''''设置宽度和小数点后的数字'''
#1. %
print('10%d'  %  99)    #10表示的是宽度
print('%.3f'  %  3.1415926) #.3表示的是小数点后三位
#同时表示宽度和精度
print('%10.3f'  %  3.1415926)   #表示总宽度为10,小数点后3位

#2. {}
print('{0:3}',format(3.1415926))    #.3表示的是一共三位数
print('{0:.3f}',format(3.1415926))  #.3f表示是3位小数
print('{0:10.3f}',format(3.1415926))    #同时设置宽度和精度

6.字符串的编码转换

s = '天涯共此时'
#编码
print(s.encode(encoding='GBK')) #GBK这种格式中,一个中文占两个字节
print(s.encode(encoding='UTF-8'))   #UTF-8这种格式中,一个中文占三个字节

#解码
byte = s.encode(encoding='GBK') #编码
#Byte代表一个二进制数据(字节类型数据)
print(byte.decode(encoding='GBK')) #解码
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值