前言一、字符串的创建和驻留机制二、字符串的常用操作
2.1字符串的查询操作2.2字符串的大小写转换2.3字符串内容的对齐2.4 字符串的劈分2.5 判断字符串的方法2.6 字符串操作的其他方法 三、字符串的比较操作四、字符串的切片五、字符串的格式化
5.1 数据的宽度和精度的表示方法 六、字符串的编码转换总结
前言
前面我们学习了
Python学习篇(一) 新建Python文件
Python学习篇(二) Python中的变量和数据类型
Python学习篇(三) Python中的运算符
Python学习篇(四) Python中的分支结构
Python学习篇(五) Python中的循环
Python学习篇(六) Python中的列表
Python学习篇(七) Python中的字典
Python学习篇(八) Python中的元组
Python学习篇(九) Python中的集合
今天我们继续学习Python中相当重要的字符串。
只在编译时驻留,这里的c=’’.join([‘ab’,’c’]),是在运行时产生的
-6并不在-5到256之间
Python有一个类,强制指向同一个地址
为什么不用pycharm,因为pycharm对字符串做了优化处理
#开发时间:2022/3/7 20:52 s='Hello,World' print(s.upper()) #转换之后,会产生一个新的字符串对象 print(s.lower()) #转换之后,会产生一个新的字符串对象 print(s.swapcase()) print(s.capitalize()) print(s.title())2.3字符串内容的对齐
#地点:湖北武汉 #姓名:学工科的皮皮志 #开发时间:2022/3/7 21:05 s='hello,python' print(s.center(20,'*'))#s有12个字符,这里给的参数是20,有8个剩余空间,那么剩下8个空间用*填充,分别放在左右两边。 print(s.ljust(20,'*')) print(s.rjust(20,'*')) print(s.zfill(20))2.4 字符串的劈分
#地点:湖北武汉
#姓名:学工科的皮皮志
#开发时间:2022/3/13 21:34
s='hello world python'
print(s.split())#分割后的结果是列表
s1='hello|world|python'
print(s1.split())
print(s1.split('|'))
print(s1.split(sep='|',maxsplit=1))
print(s1.rsplit())
print(s1.rsplit('|'))
print(s1.rsplit(sep='|',maxsplit=1))
2.5 判断字符串的方法
#地点:湖北武汉
#姓名:学工科的皮皮志
#开发时间:2022/3/13 21:46
s='hello,python'
print('1',s.isidentifier())
print('2',s.isspace())
print('3',s.isalpha())
print('4',s.isdecimal())
print('5',s.isnumeric())
print('6',s.isalnum())
2.6 字符串操作的其他方法
#地点:湖北武汉
#姓名:学工科的皮皮志
#开发时间:2022/3/16 22:46
s='hello,world'
print(s.replace('hello','python'))
s1='hello,python,python,python'
print(s1.replace('python','java',2))
lst=['hello','java','python']
print('|'.join(lst))
t=('hello','java','python')
print(''.join(t))
print('*'.join('python'))
三、字符串的比较操作
#地点:湖北武汉
#姓名:学工科的皮皮志
#开发时间:2022/3/16 23:00
print('apple'>'app')
print('apple'>'banana')
print(ord('a'),ord('b'))
print(chr(97),chr(98))
'''==和is 的区别
==比较的是值,is比较的是ID'''
a=b='python'
c='python'
print(a==b)
print(b==c)
print(a is b)#发生了驻留
print(b is c)#发生了驻留
四、字符串的切片
#地点:湖北武汉 #姓名:学工科的皮皮志 #开发时间:2022/3/19 14:26 s='hello,python' print(s[:5]) print(s[6:]) print(s[:5]+'!'+s[6:]) print(s[1:5:1]) print(s[::2]) '''切片操作会产生新的对象''' '''完整写法[start:end:step]'''五、字符串的格式化
#地点:湖北武汉
#姓名:学工科的皮皮志
#开发时间:2022/3/19 14:39
# %占位符
name='张三'
age=20
print('我叫%s,今年%d岁'% (name,age))
print('我的名字叫{0},今年{1}岁了'.format(name,age))
print(f'我叫{name},今年{age}岁了')
5.1 数据的宽度和精度的表示方法
#地点:湖北武汉
#姓名:学工科的皮皮志
#开发时间:2022/3/19 14:53
print('%10d'% 99)# 10表示宽度
print('%.3f'% 3.1415926)# .3表示小数点后几位
print('%10.3f'% 3.1415926)# 同时表示宽度和位数
'''其他表示方法'''
print('{0:.3}'.format(3.1415926))
print('{0:.3f}'.format(3.1415926))
print('{0:10.3f}'.format(3.1415926))
六、字符串的编码转换
#地点:湖北武汉 #姓名:学工科的皮皮志 #开发时间:2022/3/19 15:05 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'))总结
字符串还是非常重要的,大家需要多多练习,加深记忆。



