当前位置: 首页 > news >正文

【Python修仙编程】(二) Python3灵源初探(8)

bytes 类型的奥秘

林羽站在青云峰的山顶,感受着微风拂过脸颊,心中充满了对修仙世界的向往。师傅玄天真人在他身旁,微微一笑,说道:“林羽,今天我们要学习的是 bytes 类型,这是修仙世界中处理二进制灵力的基础。”

林羽好奇地问:“师傅,什么是 bytes 类型?”

玄天真人翻开《Python无极心法》,指着上面的文字说道:“bytes 类型是一种不可变的二进制序列,它和普通的字符串不同。字符串是由 Unicode 字符组成的,而 bytes 类型中的元素是整数值(0 到 255 之间的整数)。”

林羽挠了挠头,问道:“师傅,这有什么用呢?”

“在修仙世界中,bytes 类型可以用来处理各种二进制灵力,比如图像、音频、视频等等。在网络传输灵力时,也经常用到 bytes 类型。”玄天真人解释道。

1. 创建 bytes 对象

玄天真人继续说道:“创建 bytes 对象有好几种方式。最简单的方式是用 b 前缀,比如:”

x = b"hello"

“还有一种方式是用 bytes() 函数,将其他类型的对象转换为 bytes 类型。比如:”

x = bytes("hello", encoding="utf-8")

林羽试着写下了一段代码:

x = b"hello"
y = bytes("world", encoding="utf-8")

“师傅,我写对了吗?”林羽问道。

“很好,你已经掌握了创建 bytes 对象的基本方法。”玄天真人满意地点了点头。

2. bytes 类型的操作

玄天真人接着说道:“bytes 类型支持很多操作,比如切片、拼接、查找、替换等等。不过,由于它是不可变的,所以在进行修改操作时,需要创建一个新的 bytes 对象。”

林羽好奇地问:“师傅,能给我举个例子吗?”

“当然可以。”玄天真人写下了一段代码:

x = b"hello"
y = x[1:3]  # 切片操作,得到 b"el"
z = x + b"world"  # 拼接操作,得到 b"helloworld"

林羽跟着写了一遍,运行后发现果然得到了 b"el" 和 b"helloworld"

“师傅,这也太神奇了吧!”林羽兴奋地说道。

3. 比较 bytes 类型

玄天真人继续说道:“由于 bytes 类型中的元素是整数值,所以在进行比较操作时,需要使用整数值。比如:”

x = b"hello"
if x[0] == ord("h"):  # 使用 ord() 函数将字符转换为整数值
    print("The first element is 'h'")

林羽试着运行了一下,果然输出了 The first element is 'h'

“师傅,我明白了!”林羽开心地说道。

打怪升级:bytes 类型的练习

玄天真人交给林羽一个任务:“在下面的代码中,完成以下操作:”

  1. 创建一个 bytes 对象,内容为 b"python"

  2. 使用切片操作,取出第 2 到第 4 个字符。

  3. 将 b"python" 和 b"world" 拼接起来。

林羽写下代码:

# 创建 bytes 对象
x = b"python"

# 切片操作
y = x[1:4]  # 取出第 2 到第 4 个字符

# 拼接操作
z = x + b"world"

运行后,林羽发现 y 的值是 b"yth"z 的值是 b"pythonworld"

“师傅,我完成了!”林羽兴奋地说道。

“很好,经验值 +10!”玄天真人满意地点了点头。


练气期的进阶——数据类型转换

林羽继续跟随师傅玄天真人修炼,今天要学习的是数据类型转换。

“在修仙世界中,我们经常会遇到不同类型的灵力,比如整数灵力、浮点灵力、字符串灵力等等。有时候,我们需要将一种类型的灵力转换为另一种类型。”玄天真人说道。

1. 常见的数据类型转换

玄天真人翻开《Python无极心法》,指着上面的内容说道:“以下是一些常见的数据类型转换函数:”

2. 实例讲解

玄天真人写下了一段代码:

# 将字符串转换为整数
x =int("123")
print(x)# 输出:123

# 将整数转换为浮点数
y =float(42)
print(y)# 输出:42.0

# 将整数转换为字符串
z =str(99)
print(z)# 输出:"99"

# 将字符串转换为列表
a =list("hello")
print(a)# 输出:['h', 'e', 'l', 'l', 'o']

# 将字符串转换为元组
b =tuple("world")
print(b)# 输出:('w', 'o', 'r', 'l', 'd')

# 将整数转换为字符
c =chr(97)
print(c)# 输出:"a"

# 将字符转换为整数
d =ord("b")
print(d)  # 输出:98

林羽跟着写了一遍,运行后发现结果和师傅的一样。

“师傅,这也太神奇了吧!”林羽惊叹道。

打怪升级:数据类型转换的练习

玄天真人交给林羽一个任务:“完成以下操作:”

  1. 将字符串 "12345" 转换为整数。

  2. 将整数 678 转换为字符串。

  3. 将字符串 "hello" 转换为列表。

  4. 将字符 "a" 转换为整数。

林羽写下代码:

# 将字符串转换为整数
x =int("12345")
print(x)# 输出:12345

# 将整数转换为字符串
y =str(678)
print(y)# 输出:"678"

# 将字符串转换为列表
z =list("hello")
print(z)# 输出:['h', 'e', 'l', 'l', 'o']

# 将字符转换为整数
a =ord("a")
print(a)  # 输出:97

运行后,林羽发现结果都正确。

“师傅,我完成了!”林羽兴奋地说道。

“很好,经验值 +10!”玄天真人满意地点了点头。


林羽通过今天的修炼,掌握了 bytes 类型和数据类型转换的知识,成功进阶到练气期二阶!接下来,他将继续跟随师傅玄天真人,学习更多的《Python无极心法》。

 往期推荐 

🔗

【Python修仙编程】(二) Python3灵源初探(7)

Python黑客攻防(十三)构建SSH僵尸网络

通过python制作属于自己的桌面宠物

相关文章:

  • 8.大模型微调学习案例:基于 Hugging Face、8位量化与 LoRA 适配器的方案
  • doris: SQL Server
  • vue3中ref和reactive的区别
  • C 语 言 --- 数 组 (1)
  • Orale数据文件加错位置,你直接rm引发的故障
  • java后端开发day28--常用API(三)时间类包装类
  • npm install -g @vue/cli 方式已经无法创建VUE3项目
  • 论文阅读_LMLPA_用大语言模型实现人格评测
  • 我的世界forge模组开发(9)——自定义投掷物实体
  • c#事件案例与分析
  • 解决电脑问题(10)——桌面问题
  • js逆向-某网站cookies生成逻辑分析_2025-03-08
  • element-plus中table组件的使用
  • 【2025软考高级架构师】——软件工程(2)
  • Java的数据类型
  • 小程序 wxml 语法 —— 41列表渲染 - 进阶用法
  • 一个基于.NET Core开源、跨平台的仓储管理系统
  • 【学习笔记】【DeepSeek AI 医生】2-2 AI家庭医生课程内容介绍
  • 扩散模型中三种加入条件的方式:Vanilla Guidance,Classifier Guidance 以及 Classifier-Free Guidance
  • 数据库【使用MySQL创建第一个表格】
  • 响应试企业网站/湖北网络推广seo
  • 新昌网站制作/百度手机网页版入口
  • 成都微信网站建设多/百度首页登录入口
  • 加强公司内部网站建设/哈尔滨seo优化培训
  • 管庄网站建设/房地产市场现状分析
  • 做网站的公司市场/手机推广软文