我有一个tsv文件,其中包含一个包含utf-8编码字节字符串的列(例如b'La croisi\xc3\xa8re'
)。我尝试使用pandas
方法read_csv
来阅读此文件,但我得到的是一列字符串,而不是字节字符串(例如"b'La croisi\xc3\xa8re'"
)。
如何在Python 3中将该列读取为字节字符串而不是常规字符串?我试图在dtype={'my_bytestr_col': bytes}
中使用read_csv
但没有运气。
另一种表达方式:如何从"b'La croisi\xc3\xa8re'"
转到b'La croisi\xc3\xa8re'
?
答案 0 :(得分:1)
示例文件:
First Name Last Name bytes
0 foo bar b'La croisi\xc3\xa8re'
然后试试这个:
import pandas as pd
import ast
df = pd.read_csv('file.tsv', sep='\t')
df['bytes'].apply(ast.literal_eval)
输出:
0 b'La croisi\xc3\xa8re'
Name: bytes, dtype: object