云计算百科
云计算领域专业知识百科平台

0基础学Python——第一章:基础知识之字符串

目录

字符串的三种定义方式

字符串的引号嵌套

字符串拼接

字符串格式化

字符串格式化-数字精度控制

字符串格式化-快速写法

字符串格式化-表达式的格式化


hello小伙伴们,今天主要从四个方面来分享下关于字符串的相关内容~

字符串的三种定义方式

在Python中,字符串有多种定义方式:

① 单引号定义法:name='月亮'

② 双引号定义法:name="月亮"

③ 三引号定义法:name="""月亮"""

三引号定义法和多行注释的写法相同,也支持换行操作。因此,对于三引号而言,当使用变量接收三引号中的内容时,该内容代表字符串;当不使用变量接收三引号中的内容时,该内容代表多行注释。下面的内容大家可以敲下哦~

# 单引号定义法,使用单引号包围
name='月亮'
print(type(name))
# 双引号定义法,使用双引号包围
name="月亮"
print(type(name))
# 三引号定义法,写法和多行注释相同
name="""
我是一个
月亮
"""
print(name)
print(type(name))

字符串的引号嵌套

上面的代码输出的内容是月亮(不带引号的),那么,如果我们想得到带引号的月亮("月亮")呢?此时就要用到引号的嵌套了。

引号的嵌套主要有三个规则:

① 单引号定义法可以内含双引号;

② 双引号定义法可以内含单引号;

可以使用转义字符(\\)解除引号的作用,变成普通的字符串

可以通过下面的代码理解哦~

# 在字符串内包含双引号
name='"月亮"'
print(name)
# 在字符串内包含单引号
name="'月亮'"
print(name)
# 使用转义字符\\解除引号的效用
name="\\"月亮\\""
print(name)
name='\\'月亮\\''
print(name)

字符串拼接

我们可以通过"+"完成两个字符串的拼接,也可以完成字面量和变量或者变量与变量之间的拼接。有一点需要注意,无法完成与非字符串类型变量的拼接

# 字符串字面量之间的拼接
print("好好学习"+"天天向上")

# 字符串字面量和字符串变量的拼接
name="月亮"
address="凤凰城1234"
tel=4006189090
print("我是:"+name+",我的地址是:"+address)

# 错误示例(无法和非字符串类型进行拼接)
# print("我是:"+name+",我的地址是:"+address+",我的电话是:"+tel)

字符串格式化

关于字符串的格式化,让我们先举一个例子吧~

name="月亮"
sex="女"
address="凤凰城"
hobby="听音乐"
print("我是"+name+",我的性别是:"+sex+",我住在:"+address+",我的爱好是:"+hobby)

可以发现,当变量过多时,用拼接的方式显得很复杂和麻烦,同时在上面的注意中提到的注意事项,字符串无法和数字或者其他数据类型完成拼接。因此,我们需要找一种方式去解决上面的两个问题,答案就是字符串的格式化

下面通过一个简单例子来介绍下字符串的格式化是什么。

# 通过占位的形式,完成拼接
name="月亮程序员"
message="学IT来:%s" %name
print(message)

其中,“%”代表要占位了;“s”代表将变量转换成字符串所要占位的地方。因此,“%s”代表先占据一个位置,后面的变量会放入到占位的位置。双引号外面的“%”之后的内容就是要占位的变量名。这是单个变量的举例,那么当需要引用多个变量的时候应该怎么表示呢?具体可以看下面的代码。

# 通过占位的形式,完成数字和字符串的拼接
class_num=57
avg_salary=16788
message="Python大数据学科,北京%s期,毕业平均工资:%s" %(class_num,avg_salary)
print(message)

如上所示,当需要引用多个变量时,需要在“%”后面加一个括号将变量括起来,同时要注意一定要按照占位的顺序填入变量名

在Python中,可以支持多种的数据类型占位,较为常用的有以下三种。

表1-字符串格式化

格式符号 说明
%s 将内容转换成字符串,放入占位位置
%d 将内容转换成整数,放入占位位置
%f 将内容转换成浮点型,放入占位位置

字符串格式化-数字精度控制

在Python中,我们使用类似符号"m.n"来控制数据的宽度和精度,以下为详细介绍:

① m:控制宽度,要求变量是数字类型,设置的宽度小于数字自身时是不生效的

② n:控制小数点后的精度,要求变量是数字类型,会进行小数的四舍五入

# 百分号%精度控制
num1=11
num2=11.345
print("数字11宽度限制5,结果是:%5d" %num1)
print("数字11宽度限制1,结果是:%1d" %num1) # 对应解释①的不生效那一条
print("数字11.345宽度限制7,小数精度2,结果是:%7.2f" %num2)
print("数字11.345不限制,小数精度2,结果是:%.2f" %num2)

举例:

① %5d:表示将整数的宽度控制在5位,比如数字37被设置为%5d时,会变成[空格][空格][空格]37,会用三个空格补充直至达到宽度。

② %7.2f:表示将宽度控制在5位,将小数精度控制在2位,小数点和小数部分都算入宽度计算。比如13.145被设置为%7.2f时,结果变为[空格][空格]13.15。过程大致为用两个空格补充直至达到宽度,由于小数部分限制2位精度,因此四舍五入后得到.15。

③ %.2f:表示不限制宽度,只设置小数点精度为2位,比如将13.145被设置为%.2f时,得到结果13.15。

字符串格式化-快速写法

为了更加优雅地使用Python,可以使用语法:f"内容{变量}内容"的格式来进行快速的格式化。请注意:f(format)格式的格式化,不理会类型,不做精度控制。详细可见以下代码。

# f(format)格式的格式化,不理会类型,不做精度控制
name="稳赢公司"
setup_year=2006
stock_price=19.99
print(f"我是{name},我成立于:{setup_year},我今天的股价是:{stock_price}")

字符串格式化-表达式的格式化

首先我们需要了解下什么时表达式,例如:1+1,520*1314都是表达式。在定义变量时,name="月亮",等号右边的也都是表达式,它们都有具体的结果,具体可见以下代码。

print("1*1的结果是:%d" %(1*1))
print(f"1314*520的结果是:{1314*520}")
print("字符串在Python中的类型名是:%s" %type("字符串"))

以上是自己学习过程中总结和练习的内容,如有错误请谅解,定会修改哈,希望能够帮助小伙伴哦!!参考黑马程序员,如有侵权定会删除~谢谢观看啦

赞(0)
未经允许不得转载:网硕互联帮助中心 » 0基础学Python——第一章:基础知识之字符串
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!