如何将双字节字符/字符串转换为单字节,反之亦然?

时间:2019-05-07 10:58:13

标签: python-3.x

我正在处理日语文本,我有2个要求。

  1. 将字符串中的所有宪章转换为双字节字符。该字符串可以包含一个或两个字符,也可以包含两个字符,但是结果字符串应仅是双字节。

例如:东京都中央区晴海1丁目8番11号

预期输出:东京都中央区晴海<1>丁目<8>番<11>号。所有<>都应包含双字节字符

  1. 将所有宪章转换为单字节字符。字符串类似于要求1,但生成的字符串应仅包含单字节字符。

例如: ADORES,Inc .。

预期输出: ADORES,INC。

我正在从包含近300列的csv文件中读取此数据,只有3列需要这些操作,其余应保持不变。

我从网上获得了以下代码,但它引发错误。 raw_comp_name包含csv中的数据。 raw_comp_name.encode(encoding='utf-8').decode('ascii')

1 个答案:

答案 0 :(得分:0)

信息


日语字符具有以下标准。双字节字符的宽度是普通字母字符的两倍。

  • 全角字符(Zenkaku,全角)
  • 单字节字符(半角,半角) enter image description here

您可以从this link获取更多详细信息。

答案


您可以使用此jaconv | pip模块。它具有单字节到双字节以及双字节到单字节功能。查看来自模块documentation link

的更多详细信息

下面附有示例代码:

>>> Insert item: "1"
a_list = ['1']
>>> Insert item: "2"
a_list = ['1','2']
>>> Insert item: "3"
a_list = ['1','2','3']