python初级:基础知识-字符串

python初级:基础知识-字符串

一、字符串

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账号...

(0)


相关推荐

  • sat错题分数换算表_awing

    sat错题分数换算表_awing给定 n 个还未赋值的布尔变量 x1∼xn。现在有 m 个条件,每个条件的形式为 “xi 为 0/1 或 xj 为 0/1 至少有一项成立”,例如 “x1 为 1 或 x3 为 0”、“x8 为 0 或 x4 为 0” 等。现在,请你对这 n 个布尔变量进行赋值(0 或 1),使得所有 m 个条件能够成立。输入格式第一行包含两个整数 n,m。接下来 m 行,每行包含四个整数 i,a,j,b,用来描述一个条件,表示 “xi 为 a 或 xj 为 b”。输出格式如果问题有解,则第一行输出 POSS

  • pdaf的一些计算「建议收藏」

    pdaf的一些计算「建议收藏」 Pdaf数据获取流程根据上层的isCommand命令,在otp中获取到pdinfo。构建flowcontrolpdaf相关信息的结构体pd_profile,通过sendCommand在snesordriver文件中获取信息pdafcapacity、pdafinfo、vcinfo、cropwininfo。将矫正数据送入PDcore中,会将otp中的pdinfo和driver中进行对比,不一致则报错。在convertPDBufFormat中将pd点统一转换成raw16的格式,

  • mm理论怎么通俗理解_通俗易懂的理解三观

    mm理论怎么通俗理解_通俗易懂的理解三观讲这个之前,先讲一下什么叫对称加密,什么叫非对称加密:通俗理解:对称加密,一个盒子,两把钥匙,两把钥匙都可以锁和开锁。非对称加密,一个盒子,一个私人钥匙,很多公共的钥匙。两种情况:1,私人的钥匙能锁能开锁,公共的钥匙,只能开锁,不能上锁2,私人的钥匙能锁能开锁,公共的钥匙,只能上锁,不能开锁改革春风吹进家,江南贸易遍开花。随着改革开放的推进,小K家里的生意也越做越好,正洽迎上互联网的…

  • hbase splits_hbase shell scan

    hbase splits_hbase shell scan1Region拆分一个Region代表一个表的一段Rowkey的数据集合,当Region太大,Master会将其拆分。Region太大会导致读取效率太低,遍历时间太长,通过将大数据拆分到不同机器上,分别查询再聚合,Hbase也被人称为“一个会自动分片的数据库”。Region可以手动和自动拆分。1.1Region自动拆分1.1.1ConstantSizeRegionSplitPo…

  • 奶妈教程之基于ADS的带通滤波器仿真「建议收藏」

    奶妈教程之基于ADS的带通滤波器仿真「建议收藏」基于ADS的带通滤波器教学1.试验参数 版本:ADS2021 带通频率范围:3.3GHz~3.8GHz 带阻频率范围:3.1GHz~4.0GHz 特征阻抗:Z=50Ohm2.试验步骤(1)打开ADS软件并新建工程,如图所示(2)建立原理图工程点击图中红圈所示的图标,建立原理图建立带通滤波器工程然后会进入这样一个界面点击DesignGuide下的Filter点击弹出界面下红圈所示的指令此时整个程序界面如图所示,继续点击红圈所示的符号放入设计界面中然后选择图中红圈窗

  • Java安全之Commons Collections1分析(二)

    Java安全之CommonsCollections1分析(二)0x00前言续上篇文,继续调试cc链。在上篇文章调试的cc链其实并不是一个完整的链。只是使用了几个方法的的互相调用弹出一个计算器。

    2021年12月12日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号