如何在 Python 中将字节转换为字符串?


在本文中,我们将向您展示如何在 python 中将字节转换为字符串。以下是完成此任务的各种方法:

  • 使用 decode() 函数

  • 使用 str() 函数

  • 使用 codecs.decode() 函数

  • 使用 pandas 库

使用 decode() 函数

Python 中内置的 decode() 方法用于将字节转换为字符串。

算法(步骤)

以下是执行所需任务的算法/步骤:

  • 创建一个变量来存储输入字节字符串数据。

  • 打印输入数据。

  • 使用 type() 函数(返回对象的类型)打印输入数据的类型。

  • 使用 decode() 函数将输入字节转换为 Python 字符串。

  • 打印输出数据。

  • 使用 type() 函数打印将输入字节转换为 Python 字符串后输出数据的类型。

示例

以下程序使用 decode() 函数将输入字节转换为 Python 字符串:

# input bytes inputData = b'TutorialsPoint' # printing input bytes data print('Input data:', inputData) # printing the type of input data print(type(inputData)) # converting the input bytes to a python string using decode() function result = inputData.decode() # printing the result after decoding the bytes print('Output data:', result) # printing the type of output data(result) after conversion print(type(result))

输出

执行上述程序后,将生成以下输出:

Input data: b'TutorialsPoint'
<class 'bytes'>
Output data: TutorialsPoint
<class 'str'>

使用 str() 函数

str() 函数返回对象的字符串格式,即将其转换为字符串形式。

算法(步骤)

以下是执行所需任务的算法/步骤:

  • 创建一个变量来存储输入字节字符串数据。

  • 打印输入数据。

  • 使用 type() 函数(返回对象的类型)打印输入数据的类型。

  • 通过将输入数据和 'UTF-8' 作为参数传递给 str() 函数,将其用于将输入字节转换为 Python 字符串。

  • 打印输出数据。

  • 使用 type() 函数打印将输入字节转换为 Python 字符串后输出数据的类型。

示例

以下程序使用 str() 函数将输入字节转换为 Python 字符串:

# input bytes inputData = b'TutorialsPoint' # printing input bytes data print('Input data:', inputData) # printing the type of input data print(type(inputData)) # converting the input bytes to a string using str() function result = str(inputData, 'UTF-8') # printing the result after decoding the bytes print('Output data:', result) # printing the type of output data(result) after conversion print(type(result))

输出

执行上述程序后,将生成以下输出:

Input data: b'TutorialsPoint'
<class 'bytes'>
Output data: TutorialsPoint
<class 'str'>

使用 codecs.decode() 函数

codecs 模块也可用于将字节数据类型转换为字符串。

codecs 模块的 decode() 方法将二进制字符串解码为普通形式。

算法(步骤)

以下是执行所需任务的算法/步骤:

  • 使用 import 关键字导入 codecs 模块。

  • 创建一个变量来存储输入字节字符串数据。

  • 打印输入数据。

  • 使用 type() 函数(返回对象的类型)打印输入数据的类型。

  • 使用 codecs 模块的 decode() 函数将输入字节转换为 Python 字符串。

  • 打印输出数据。

  • 使用 type() 函数打印将输入字节转换为 Python 字符串后输出数据的类型。

示例

以下程序使用 codecs.decode() 函数将输入字节转换为 Python 字符串:

# importing codecs module import codecs # input bytes inputData = b'TutorialsPoint' # printing input bytes data print('Input data:', inputData) # printing the type of input data print(type(inputData)) # converting the input bytes to a python string using # codecs.decode() function result = codecs.decode(inputData) # printing the result after decoding the bytes print('Output data:', result) # printing the type of output data(result) after conversion print(type(result))

输出

执行上述程序后,将生成以下输出:

Input data: b'TutorialsPoint'
<class 'bytes'>
Output data: TutorialsPoint
<class 'str'>

使用 pandas 库

语法

str.decode()

通过在列上调用 str.decode() 函数,可以快速将 pandas 中工作的数据帧中的字节转换为字符串。

默认情况下,Python 字符编码通常为 UTF-8。

算法(步骤)

以下是执行所需任务的算法/步骤:

  • 使用 import 关键字导入 pandas 模块。

  • 创建一个变量来存储输入字典,并为其提供一些随机的键值对。(这里我们传递字节作为值)

  • 使用 DataFrame() 函数创建上述输入字典的 pandas 数据帧。

  • 使用 decode() 函数将 clothes 列的值转换为字符串(从字节到字符串),并将此结果数据帧存储在一个变量中。

  • 打印将值从字节转换为字符串后的结果数据帧。

示例

以下程序在将值从字节转换为字符串后返回 pandas 数据帧:

# importing pandas module import pandas as pd # input dictionary inputDict = {'clothes' : [ b'shirt', b'pant', b'tshirt', b'cap']} # Creating pandas dataframe of the above dictionary dataframe = pd.DataFrame(data=inputDict) # Converting the dictionary values(bytes) to string result = dataframe['clothes'].str.decode("utf-8") # printing the resultant dataframe after converting the values from bytes to string print(result)

输出

执行上述程序后,将生成以下输出:

0 shirt
1 pant
2 tshirt
3 cap
Name: clothes, dtype: object

结论

在本文中,我们学习了如何使用四种不同的方法将字节转换为 Python 字符串。我们还学习了如何将 Python 字典转换为 pandas 数据帧。我们学习了如何使用 decode() 函数将列值转换为字符串。

更新于: 2022年10月28日

11K+ 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告