一、数据类型转换
%s 字符串
%d 数值整数
%f 浮点数
format f表达式 挖坑填坑法则
1 name = '张三' 2 age = 18 3 height = 180.5 4 5 print('我的名字是%s' % name) 6 print('我今年%d岁' % age) 7 print('我身高是%.2f' % height) 8 print('我叫{},我今年{}岁,我的身高是{}'.format(name, age, height)) 9 print(f'我叫{name},我今年{age}岁,我的身高是{height}')
二、获取字符串中的数据
1.索引
1 brother = 'hello python' 2 print(brother) 3 # 查找p 4 # 从左边开始索引从0开始 5 # 从右边开始索引从-1开始 6 print(brother[6]) 7 print(brother[-6])
1 # 扩展:enumerate 函数 2 brother = 'hello python' 3 for index, i in enumerate(brother): 4 print(index, i)
2.字符串中的切片
语法:name[start,end,step]
start 起始值 默认为0
end 终止值 不包含自身,左闭右开
step 步长 默认为1
1 name = 'hellopython' 2 print(name[2:5]) # 从2开始,到5结束(不包含5) 3 print(name[2: 5: 1]) # 从2开始,到5结束,步长为1(不包含5) 4 print(name[:5]) # 从0开始,到5结束(不包含5) 5 print(name[1:]) # 从1开始,一直到结束 6 print(name[:]) # 拿取所有 7 print(name[::2]) # 从0开始,步长为2,拿取所有 8 print(name[:-1]) # 从0开始,到最后一个数结束(-1代表最后一个数,不包含自身) 9 print(name[-4:-1]) # 从倒数第四个数开始,到倒数第一个结束(不包含-1本身) 10 print(name[::-1]) # 从-1开始,倒着打印字符串,步长为1 逆序 11 print(name[::-2]) # 从-1开始,倒着打印字符串,步长为2 逆序 12 13 # 注意:起始值到终止值与步长的方向必须一致 14 print(name[-1:-4:-1]) 15 print(name[6:2:-2])
三、字符串常见操作方法
替换、复制、连接、比较、查找、大小写转换、分割、判断等
重点:替换、连接、查找、分割、判断
1.查找:查找字串在字符串中出现的位置或出现的次数
find() 检测某个字符串是否包含在这个字符串中,如果在,返回这个字符串开始的位置下标,否则返回-1
语法:find(sub,start,end)
sub 要查找的字串
start 起始位置 默认开头
end 终止位置 默认结尾
1 name = 'hello and python and hello world' 2 print(name.find('and')) 3 print(name.find('and', 8, 20))
index() 检测某个字符串是否包含在这个字符串中,如果在,返回这个字符串开始的位置下标,否则报错
语法:index(sub,start,end)
sub 要查找的字串
start 起始位置 默认开头
end 终止位置 默认结尾
1 name = 'hello and python and hello world' 2 print(name.index('ands')) # index找不到就会报错 3 print(name.index('and', 8, 20))
count() 返回某个字串在字符串中出现的次数,只能找一层
1 li = [1, 2, 3, 4, 5, 6, 6, 6, 7, 8, 9, [6, 6, 6, 6, 6, ]] 2 print(li.count(6)) 3 print(li[-1].count(6))
2.修改:对字符串当中的内容进行修改
replace(old,new,count) 进行替换的过程中并不会改变原来的字符串 而是会返回一个副本 重新赋值打印即可
old 老的
new 新的
count 次数 不指定count 全部替换
1 # 注意:字符串是不可变数据类型 2 name = 'hello and python and hello world' 3 new_name = name.replace('and', '和', 3) 4 print(name.replace('and', '和', 1)) 5 print(new_name)
3.分割
split(self,sep,maxsplit)
sep 分隔符 默认是空格
maxsplit 最大的分割次数 分割3次实际上是生成了4个元素
1 # 分割后的数据类型会变成列表 2 name = 'hello and python and hello world' 3 li_name = name.split(' ', maxsplit=3) 4 li_name = name.split() 5 print(li_name)
4.连接
join() 字符串与字符串之间的连接
'sep'.join(iterable)
sep 分隔符,可以为空
iterable 可迭代对象,要连接的元素序列、字符串、元组、字典
如果说一个对象能够用for循环遍历 那么他就是可迭代对象
1 name = 'hello and python and hello world' 2 list1 = ['hello', 'python', 'i', 'love', 'you'] 3 list2 = [1, 2, 3, 4, 5] # 列表中的元素并不是字符串,无法连接 4 print('__'.join(list1)) # 将列表转换为字符串,并且使用指定符号隔开
5.删除
strip() 只能删除左右两边的符号 不能删除中间的
1 name = '@hello and @@python and hello world@@@' 2 print(name.strip()) # 默认删除两侧空格 3 print(name.strip('@')) 4 print(name.replace('@', ''))
6.判断
isalpha() 如果字符串至少有一个字符并且所有字符都是字母则返回 True,否则返回 False
isdigit() 如果字符串只包含数字则返回 True 否则返回 False
isalnum() 如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False
isspace() 如果字符串中只包含空格,则返回 True,否则返回 False
其他方法:
startswith() 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False。如果参数 beg 和 end 指定值,则在指定范围内检查,语法:str.startswith(str, beg=0,end=len(string))
endswith() 方法用于判断字符串是否以指定后缀结尾,如果以指定后缀结尾返回True,否则返回False。可选参数"start"与"end"为检索字符串的开始与结束位置,语法:str.endswith(suffix[, start[, end]])
capitalize() 将字符串的第一个字母变成大写,其他字母变小写。对于 8 位字节编码需要根据本地环境,语法:str.capitalize()
title() 方法返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写(见 istitle())
upper() 方法将字符串中的小写字母转为大写字母
lower() 方法转换字符串中所有大写字符为小写
ljust() 方法返回一个原字符串左对齐,并使用空格填充至指定长度的新字符串。如果指定的长度小于原字符串的长度则返回原字符串,语法:str.upper()
rjust() 返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串。如果指定的长度小于字符串的长度则返回原字符串
center() 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串。默认填充字符为空格
7.拼接
1 a = 'hello' 2 b = 'baby' 3 print(a + b) # 字符串运算 叫拼接
8.转义
# r转义 print('告诉老默\n我想吃鱼了!') print(r'告诉老默\n我想吃鱼了!') # 会将转义字符取消 让其成为一个普通字符 print('\\') # \特殊字符 print(r'\\')
标签:返回,end,name,Python,笔记,print,字符串,hello From: https://www.cnblogs.com/JayHan/p/17181793.html