《疯狂Python》学习第2课

1.4.7字节串(bytes)

字节串(bytes)由多个字节组成,以字节为单位进行操作。bytes 也是不可变序列。
bytes 对象只负责以宇节(二进制格式)序列来记录数据,至于这些数据到底表示什么内容,完全由程序决定。
如果希望将一个字符串转换成bytes 对象, 有如下三种方式。
1〉如果字符串内容都是ASCII 字符,则可以通过直接在字符串之前添加b 来构建字节串值。
2〉调用bytes()函数(其实是bytes 的构造方法)将字符串按指定字符集转换成字节串,如果不指定字符集,默认使用UTF - 8 字符集。
3〉调用字符串本身的encode()方法将字符串按指定宇符集转换成字节串,如果不指定字符集,默认使用UTF- 8 字符集。
如果程序获得了bytes 对象,也可调用bytes 对象的decode()方法将其解码成字符串

1.5深入使用字符串

1.5.1转移字符

字符串中可以使用反斜线进行转义;如果字符串本身包含反斜线,则需要使用“\\”表示,“\\”就是转义字符。Python支持的转移字符表如下:

转义字符说明
\b退格符
\n换行符
\r回车符
\t制表符
\’’双引号
\’单引号
\\反斜线

1.5.2字符串格式化

Python 提供了“%”对各种类型的数据进行格式化输出
print 函数包含三个部分:
第一部分是格式化字符串(它相当于字符串模板),该格式化字符串中包含一个“ %s ”占位符,它会被第三部分的变量或表达式的值代替;
第二部分固定使用“%”作为分隔符。
第三部分的变量或表达式的值。如果果格式化字符串中包含多个“ %s ”占位符,第三部分也应该对应地提供多个变量。
Python提供了表1.2所示的转换说明符
表1.2所示的转换说明符

转换说明符说明
d,i转换为带符号的十进制形式的整数
o转换为带符号的八进制形式的整数
x ,X转换为带符号的十六进制形式的整数
e转换为科学计数法表示的浮点数(e小写)
E转换为科学计数法表示的浮点数(E大写)
f,F转换为十进制的浮点数
g智能选择使用f或e格式
G智能选择使用F或E格式
C转换为单字符(只接受整数或单字符字符串)
r使用repr()将变量或表达式转换为字符串
s使用str()将变量或表达式转换为字符串

当使用上面的转换说明符时可指定转换后的最小宽度。代码示例如下:

num = -28
print ( "num is : %6i", % num)

输出结果如下:

num is :   -28

在默认情况下, 转换出来的字符串总是右对齐的, 不够宽度时左边补充空格。Python 也允许在最小宽度之前添加一个标志来改变这种行为, Python 支持如下标志。

-: 指定左对齐。
+: 表示数值总要带着符号(正数带“+” ,负数带" -")。
0:表示不补充空格, 而是补充0 。

对于转换浮点数, Python 还允许指定小数点后的数字位数:如果转换的是字符串, Python 允许指定转换后的字符串的最大字符数。这个标志被称为精度值,该精度值被放在最小宽度之后,中间用点()隔开。

my_value = 3.001415926535
print("my_value is : %+08.3f" % my_value)
#最小宽度为8 , 小数点后保留3位, 左边补0 ,始终带符号
the_name ="Charlie"
#只保留2 个字符,最小宽度为10
print('the_name is :  %10.2s' % the_name)

输出结果:

my_value is+003.001
the_name is :          Ch

1.5.3 序列相关方法

字符串本质上就是由多个字符组成的,因此程序允许通过索引来操作字符。Python 字符串直接在方括号( [])中使用索引即可获取对应的字符, 字符串中第一个字符的索引为0 、第二个字符的索引为1,后面各字符依此类推。此外, Python 也允许从后面开始计算索引,最后一个字符的索引为-1,倒数第二个字符的索引为-2······依此类推。

s = 'crazyit.org is very good '
#输出前五个字符,输出字符的下标到4
print(s[0:5])

输出结果:

crazy

Python 字符串还支持用in 运算符判断是否包含某个子串。例如如下代码。

print ( 'very ' in s)#输出结果True

如果要获取字符串的长度,则可调用Python 内置的len()函数。例如如下代码。

print(len(s))#输出结果25

还可使用全局内置的min()和max()函数获取字符串中最小字符和最大字符。例如如下代码。`

print(max(s)) # z
#输出s 字符串中的最小字符
print(min (s)) #空格

1.5.4 大小写相关方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行程实践、外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
提供的源码资源涵盖了小程序应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行程实践、外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行程实践、外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值