IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python(五)字符串的常用操作和编码、转码 -> 正文阅读

[Python知识库]python(五)字符串的常用操作和编码、转码

字符串的驻留机制在这里插入图片描述

'''字符串的驻留机制'''
a='python'
b="python"
c='''python'''
print(a,id(a))
print(b,id(b))
print(c,id(c))
python 1368352737136
python 1368352737136
python 1368352737136

在这里插入图片描述
在这里插入图片描述

s1=''
s2=''
print(s1 is s2)

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

s1='abcx'
s2='abcx'
print(s1 is s2)
print(id(s1))
print(id(s2))

s1="abc#%%"
s2="abc#%%"
print(s1 is s2)
print(id(s1))
print(id(s2))
True
True
True
2427781498800
2427781498800
True
2427781498224
2427781498224

字符串的常用操作

字符串的查询操作的方法

在这里插入图片描述

'''字符串的查询操作'''
s='hello,hello'
print(s.index('lo'))  #3
print(s.find('lo'))   #3
print(s.rindex('lo')) #9
print(s.rfind('lo'))  #9
#print(s.index('k'))  #ValueError: substring not found
print(s.find('k'))    #-1
#print(s.rindex('k')) #ValueError: substring not found
print(s.rfind('k'))   #-1

在这里插入图片描述

字符串的大小写转换操作的方法

在这里插入图片描述

'''字符串的大小写转换的方法'''
s='hello,python'
a=s.upper() #转成大写之后,会产生一个新的字符串对象
print(a,id(a))
print(s,id(s))
print("-----------转换成小写-------------")
b=s.lower() #转成小写之后,会产生一个新的字符串对象
print(b,id(b))
print(s,id(s))
HELLO,PYTHON 2021884151728
hello,python 2021884151216
-----------转换成小写-------------
hello,python 2021884152048
hello,python 2021884151216
#########################################################################################
s2='hello,Python'
print(s2.swapcase())
print(s2.title())

HELLO,pYTHON
Hello,Python

字符串内容对齐操作

在这里插入图片描述

s='hello,Python'
'''居中对齐'''
print(s.center(20,'*'))

'''左对齐'''
print(s.ljust(20,'*'))
print(s.ljust(10))    #小于原字符串长度,将返回原字符串
print(s.ljust(20))    #默认填充符是空格

****hello,Python****
hello,Python********
hello,Python
hello,Python    
#########################################################################################
'''右对齐'''
print(s.rjust(20,'*'))

'''右对齐,使用0进行填充'''
print(s.zfill(20))
print('-8977'.zfill(8))

********hello,Python
00000000hello,Python
-0008977

字符串劈分操作

在这里插入图片描述

s='hello world Python'
lst=s.split()
print(lst)

s1='hello|world|Python'
print(s1.split(sep='|'))
print(s1.split(sep='|',maxsplit=1))

print('-------------------------------')
'''rsplit()从右侧开始劈分'''
print(s.rsplit())
print(s1.rsplit('|'))
print(s1.rsplit(sep='|',maxsplit=1))

['hello', 'world', 'Python']
['hello', 'world', 'Python']
['hello', 'world|Python']
-------------------------------
['hello', 'world', 'Python']
['hello', 'world', 'Python']
['hello|world', 'Python']

判断字符串操作

在这里插入图片描述

s='hello,python'
print('1',s.isidentifier()) #字母,数字,下划线,逗号不是
print('2','张三_123'.isidentifier())
print('3','\t'.isspace())
print('4','abc'.isalpha())
print('5','张三1'.isalpha())
print('6','123'.isdecimal())
print('7','123四'.isnumeric())
print('8','张三123'.isalnum())
print('9','张三!'.isalnum())

1 False
2 True
3 True
4 True
5 False
6 True
7 True
8 True
9 False

字符串的替换和合并

在这里插入图片描述

s='hello,Python'
print(s.replace('Python','Java'))
s1='hello,Python,Python,Python'
print(s1.replace('Python','Java',2))

lst=['hello','Java','Python']
print('|'.join(lst))
print(''.join(lst))

hello,Java
hello,Java,Java,Python
hello|Java|Python
helloJavaPython
#########################################################################################
t=('hello','Java','Python')
print(''.join(t))
print('*'.join('Python'))
helloJavaPython
P*y*t*h*o*n

字符串的比较操作

在这里插入图片描述

print('apple'>'app')
print('apple'>'banana')
print(ord('a'),ord('b'))
print(ord('赵'))

print(chr(97),chr(98))
print(chr(36213))
True
False
97 98
36213
a b
赵
#########################################################################################
'''==与is的区别
==比较的是value
is 比较的是id是否相等'''
a=b='Python'
c='Python'
print(a==b)
print(b==c)

print(a is b)
print(a is c)
print(id(a))
print(id(b))
print(id(c))
True
True
True
True
2162432169648
2162432169648
2162432169648
s='hello,Python'
s1=s[:5]
s2=s[6:]
s3='!'
new=s1+s3+s2
print(s1)
print(s2)
print(new)
hello
Python
hello!Python
#########################################################################################
print('----------切片[start:end:step]--------------------')
s='hello,Python'
print(s[1:5:1])  #从1开始截到5(不包含5),步长为1
print(s[::2])
print(s[::-1])
print(s[-6::1]) #从索引为-6开始,到最后一个元素结束,步长为1
ello
hloPto
nohtyP,olleh
Python

格式化字符串

在这里插入图片描述

在这里插入图片描述

#格式化字符串
#(1)%占位符
name='张三'
age=20
print('我叫%s,今年%d岁' % (name,age))

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

#(3)f-string
print(f'我叫{name},今年{age}岁')

我叫张三,今年20岁
我叫张三,今年20岁
我叫张三,今年20岁
#########################################################################################
print('%10d' % 99)        #10表示的是宽度
print('%.3f' % 3.1415926) #.3表示是小数点后三位
#同时表示宽度和精度
print('%10.3f' % 3.1415926) #一共总宽度为10,小数点后3位
print('123456789')
        99
3.142
     3.142
123456789
print('{0:.3}'.format(3.1415926))   #.3表示的是一共是3位数
print('{0:.3f}'.format(3.1415926))  #.3f表示是3位小数
print('{:10.3f}'.format(3.1415926)) #同时设置宽度和精度,一共是10位,3位是小数
3.14
3.142
     3.142

字符串的编码转换

在这里插入图片描述

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

#解码
#byte代表就是一个二进制数据(字节类型的数据)
byte=s.encode(encoding='GBK')       #编码
print(byte.decode(encoding='GBK'))  #解码

byte=s.encode(encoding='UTF8')
print(byte.decode(encoding='UTF-8'))

b'\xcc\xec\xd1\xc4\xb9\xb2\xb4\xcb\xca\xb1'
b'\xe5\xa4\xa9\xe6\xb6\xaf\xe5\x85\xb1\xe6\xad\xa4\xe6\x97\xb6'
天涯共此时
天涯共此时

小结

在这里插入图片描述

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-11-29 16:16:37  更:2021-11-29 16:16:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 2:52:17-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码