如何在 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() 函数将列值转换为字符串。