Python的操作字符串

字符串中的元素

字符串的单个字母,数字,汉字,符号 都可以被称为一个元素

# 请问变量a中共有几个元素?
a = 'hello!'

字符串的长度如何获得?

len(字符串变量名)

# 输出字符串的长度
print(len(a))

字符串中的单个元素如何获得?

想要获得字符串中的单个元素,必须引入一个概念:索引
索引:字符串中的元素,从左到右,从零开始的编号(正序)
字符串中的元素,从右到左,从-1开始的编号(反序)

a = 'hello'
 h  e  l  l  o
 0  1  2  3  4(正序)
-5 -4 -3 -2 -1(反序)

使用方法
字符串名[索引值]

print(a[4])
print(a[-1])

控制台:

o
o

字符串如何取多个值

切片
使用方法:
字符串变量名[索引头:索引尾:步长] 步长默认为1(取头不取尾)

# 步长默认为1
print(a[0:4:1])
print(a[0:4])

print(a[2:4:2])  # 只取索引为2的元素
print(a[:4])    # 取索引为 0 1 2 3的元素
print(a[3:])    # 取索引为 3 4的元素

控制台:

hell
hell
l
hell
lo

字符串如何倒序输出?

print(a[::-1])

字符串如何分割?

字符串变量名.split('切割符号',切割次数)

print(a.split())
print(type(a.split()))

控制台:

['hello']
<class 'list'>

返回的类型为列表

列表

  • 类型:list
  • 符号:[]
a = [1, 1.234, 'str', [1, 2, 3]]
b = []
  • 可以存在空列表
  • 列表中可以包含任何数据类型
  • 列表中的元素用逗号分开

字符串切割演示:

a = ' hello'
print(a.split(' '))
print(a.split('l',1))
print(a.split('l',2))

控制台:

['', 'hello']
[' he', 'lo']
[' he', '', 'o']
  • 字符串切割之后,返回一个列表类型的数据,列表里的子元素都是字符串
  • 制定的切割符号被切掉

字符串如何替换元素?

字符串变量名.replace('被替换的元素','替换成的元素',替换次数)

a = 'hello'
b = a.replace('h', 'H', 1)
c = a.replace('l', 'L', 2)
print(b)
print(c)
Hello
heLLo

字符串如何去除指定字符?

字符串变量名.strip(' 元素')

a = ' helloo'
newa = a.strip()
newa_2 = a.strip('e')
newa_3 = a.strip('o')
print(newa)
print(newa_2)
print(newa_3)

控制台

helloo
 helloo
 hell
  • 默认去掉空格
  • 只能去掉头和尾的字符

字符串如何拼接?

字符串a变量名+字符串b变量名

a = 'Hello'
b = 'Python'
c = ' !'
print(a+b+c)
HelloPython ! 

字符串如何格式化输出?

方式一:
'{0}'.format(a) 用{}来占坑

name = '小刘'
age = 24
word = '大家好我叫{0},今年{1}岁了!'.format(name,age)
print(word)

控制台

大家好我叫小刘,今年24岁了!

方式二:
使用占位符

占位符 替换内容
 %d    整数
 %f   浮点数
 %s   字符串
 %x   十六进制整数
name = '小云'
score = 99.99
word = '%s同学在这次考试中取得了%f的好成绩!'
word_2 = '%s同学在这次考试中取得了%.1f的好成绩!'
word_3 = '%s同学在这次考试中取得了%.2f的好成绩!'
word_4 = '%s同学在这次考试中取得了%d的好成绩!'

print(word % (name, score))
print(word_2 % (name, score))
print(word_3 % (name, score))
print(word_4 % (name, score))

控制台

小云同学在这次考试中取得了99.990000的好成绩!
小云同学在这次考试中取得了100.0的好成绩!
小云同学在这次考试中取得了99.99的好成绩!
小云同学在这次考试中取得了99的好成绩!
  • 浮点数占位符可以修改精确位数,默认小数点后6位
  • 精确位数后面还有值的话,会四舍五入
  • 使用整数占位符会截断浮点型的数据
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容