一、字符串
1.字符串声明
# 传统声明,使用单引号包含字符
s1 = '字符串'
# 常规声明,使用双引号包含字符
s2 = "字符串"
# 长字符串声明
s3 = """ 这是一个长字符串 长字符串可以包含换行 """
2.字符串赋值与删除
# 初始化字符串[第一次使用变量,并向变量中存储数据]
name = "TOM"
# 更新字符串数据[给已经存在的字符串重新赋值数据]
name = "JERRY"
# 获取字符串中的数据
print(name)
# 删除字符串数据
name = None # 逻辑删除
del name # 物理删除[删除了数据同时删除了变量]
3.字符串常规操作
(1)切片
与列表相同,每个字符相当于一个元素,可以顺序编号,也可以倒叙编号
(2)字符串变形
S.lower() 将字符串S中的所有字符转换成小写
S.upper() 将字符串S中的所有字符转换成大写
S.title() 将字符串S中的每个单词的首字母大写[标题]
S.capitalize() 将字符串S中的第一个单词的首字母大写[段落]
S.swapcase() 将字符串S中的所有大小写字母转换
info = "Hello World"
s1=info.upper()
print(s1)
#HELLO WORLD
s2=info.lower()
print(s2)
#hello world
s3=info.title()
print(s3)
#Hello World
s4=info.capitalize()
print(s4)
#Hello world
s5=info.swapcase()
print(s5)
#hELLO wORLD
4.字符串其他操作
可以利用字符串的切片操作例如S.index©,可以到达很多意料之外的功能,例如在地址中1获取文件名
S.center(width) 居中对齐
S.ljust(width) 左对齐
S.rjust(width) 右对齐
S.strip() 剔除字符串两侧的空格
S.lstrip() 剔除字符串左侧的空格
S.rstrip() 剔除字符串右侧的空格
S.split(c) 按照指定的字符串c,将字符串S拆分成多个字符串组成列表
S.rsplit(c) 反向
S.partition(c) 按照指定的字符串c,将字符串S拆分成三个字符串组成列表
S.rpartition(c) 反向
S.join(L) 使用指定的字符串,连接一串有顺序的字符串
S.index(c) 在字符串S中,查询字符串c第一次出现的位置查询不到数据会出现错误提示ValueError
S.rindex(c)
S.find(c) 在字符串S中,查询字符串c第一次出现的位置,查询不到数据会返回一个-1索引
S.rfind(c)
S.startswith(c) 判断字符串S是否以字符串c开头
S.endswith(c) 判断字符串S是否以字符串c结束
S.count(c) 在字符串S中,查询字符串c出现的次数
S.replace(o, n) 将字符串S中的o字符串替换成n字符串
S.translate(_tab) 比较少用,经常和maketrans()配合使用,用来进行特定的字符数据替换,是最原始的移位加密
S.isalnum() 判断字符串中是否包含 字母+数字
S.isalpha() 判断字符串中是否包含 字母
S.isnumeric() 判断字符串中是否包含 数字
S.isascii() 判断字符串中是否可以转换 ascii码
S.isdigit() 判断字符串中是否包含 整数
S.islower() 判断字符串中是否 小写
S.isupper() 判断字符串中是否 大写
S.istitle() 判断字符串中是否 标题
S.isspace() 判断字符串中是否 空格
二、字符串元字符与转义字符
python中为了字符串能表示各种类型的数据,提供了各种元数据表示不同的字符意义
(1)元字符
s = "xxx" 普通字符串;python3中就是unicode编码
python2中使用的ascii编码
s = u"xxx" 这是一个指定了unicode编码的字符串
python2中经常使用;python3中已经不用(默认)
s = b"xxx" 这是一个指定了的字节类型的字符串数据
b(bytes/binary)
s = f"xxx" 这是一个格式化的字符串数据,可以在字符串中直接渲染展示变量数据,参考字符串格式化展示
s = r"xxx" 这是一个防止字符串中转义符号的字符串,转义符号在r开头的字符串中没有作用
(2)转义字符
\ 就是一个转义符号
\\ 字符串中输出一个反斜杠
\n 换行
\r 回车
\t 水平制表符,表示的就是键盘上的tab按键
三、字符串格式化展示
字符串格式化展示:字符串数据和变量数据混合输出
(1)正常输出
# 人的信息
hero = "sun_jing"
win = 520
price = 1314.00
# ① 正常输出
print("正常输出-->英雄名称:", hero, "; 获胜场次:", win, "; 价格:", price)
print("拼接输出-->英雄名称:" + hero + ";获胜场次:" + str(win) + ";价格:" + str(price))
正常输出-->英雄名称: sun_jing ; 获胜场次: 520 ; 价格: 1314.0
拼接输出-->英雄名称:sun_jing;获胜场次:520;价格:1314.0
(2)% 占位输出
# 人的信息
hero = "sun_jing"
win = 520
price = 1314.00
# % 占位输出
print("%%占位符-->英雄名称:%s,获胜场次:%d,价格:%f" % (hero, win, price))
print("%%占位符-->英雄名称:%10s,获胜场次:%d,价格:%.2f" % (hero, win, price))
%占位符-->英雄名称:sun_jing,获胜场次:520,价格:1314.000000
%占位符-->英雄名称: sun_jing,获胜场次:520,价格:1314.00
(3)format()格式化输出
hero = "sun_jing"
win = 520
price = 1314.00
# format()格式化输出
print("format格式化--> 英雄名称{},获胜场次:{},价格:{}".format(hero, win, price))
print("format格式化--> 英雄名称{h},获胜场次:{w},价格:{p}".format(w=win, h=hero, p=price))
print("format格式化--> 英雄名称{h:^10},获胜场次:{w},价格:{p:.2f}".format(w=win, h=hero, p=price))
format格式化--> 英雄名称sun_jing,获胜场次:520,价格:1314.0
format格式化--> 英雄名称sun_jing,获胜场次:520,价格:1314.0
format格式化--> 英雄名称 sun_jing ,获胜场次:520,价格:1314.00
(4)f-string格式化字符串
# f-string格式化字符串 [format string]
print(f"f-string字符串--> 英雄名称:{
hero}, 获胜场次:{
win}, 价格:{
price}")
print(f"f-string字符串--> 英雄名称:{
hero:10}, 获胜场次:{
win}, 价格:{
price:.2f}")
f-string字符串--> 英雄名称:sun_jing, 获胜场次:520, 价格:1314.0
f-string字符串--> 英雄名称:sun_jing , 获胜场次:520, 价格:1314.00
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/114461.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...