从列表中删除前缀u'

时间:2017-04-11 11:50:54

标签: python numpy

这可能更容易,但这一次让我烦恼了一会儿。非常感谢帮助。

问题定义: 通过删除前缀为数据的unicode值,使列表输出看起来很好。

这是我的代码:

nfl = np.genfromtxt("drinks.csv", dtype="<U75", skip_header=1, delimiter=",")
print(nfl)

输出如下:

[[u'Afghanistan' u'0' u'0' u'0' u'0.0']
 [u'Albania' u'89' u'132' u'54' u'4.9']
 [u'Algeria' u'25' u'0' u'14' u'0.7']
 [u'Andorra' u'245' u'138' u'312' u'12.4']
 [u'Angola' u'217' u'57' u'45' u'5.9']]

我也尝试打印它像print(str(nfl))。没有运气!我如何修改输出?

我想看到的是

[['Afghanistan' '0' '0' '0' '0.0']
 ['Albania' '89' '132' '54' '4.9']
 ['Algeria' '25' '0' '14' '0.7']
 ['Andorra' '245' '138' '312' '12.4']
 ['Angola' '217' '57' '45' '5.9']]

3 个答案:

答案 0 :(得分:0)

您可以将编码更改为utf8(u代表Unicode) 代码示例:

item.encode('utf8')

请记住导入库'unicodedata'。

答案 1 :(得分:0)

您的列表中缺少逗号,但是我认为只是您看到列表是原始状态。如果您实际提取数据,您会发现“你”已经消失了。

data = [[u'Afghanistan', u'0', u'0', u'0', u'0.0'],
 [u'Albania', u'89', u'132', u'54', u'4.9'],
 [u'Algeria', u'25', u'0', u'14', u'0.7'],
 [u'Andorra', u'245', u'138', u'312', u'12.4'],
 [u'Angola', u'217', u'57', u'45', u'5.9']]

for country in data:
    for item in country:
        print item

我希望这就是你所要求的。

答案 2 :(得分:0)

@hpaulj评论帮助了我,我得到了理想的输出。

nfl = np.genfromtxt("drinks.csv", dtype="S75", skip_header=1, delimiter=",")
print(nfl)

我得到了我想要的输出:

[['Afghanistan' '0' '0' '0' '0.0']
 ['Albania' '89' '132' '54' '4.9']
 ['Algeria' '25' '0' '14' '0.7']
 ['Andorra' '245' '138' '312' '12.4']
 ['Angola' '217' '57' '45' '5.9']]

全部谢谢!