栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用numpy.genfromtxt在Python 3中加载UTF-8文件

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用numpy.genfromtxt在Python 3中加载UTF-8文件

在Python3中,我可以执行以下操作:

In [224]: txt = "Côte d'Ivoire"In [225]: x = np.zeros((2,),dtype='U20')In [226]: x[0] = txtIn [227]: xOut[227]: array(["Côte d'Ivoire", ''],   dtype='<U20')

这意味着我可能可以打开“ UTF-8”文件(常规模式,而不是字节模式),并读取行,并将其分配给数组元素,例如

x

但是,

genfromtxt
坚持使用无法处理较大
UTF-8
集合(7字节v
8)的字节字符串(ascii)进行操作。所以我需要
depre
在某个时候申请以获得一个
U
数组。

我可以使用以下命令将其加载到“ S”数组中

genfromtxt

In [258]: txt="Côte d'Ivoire"In [259]: a=np.genfromtxt([txt.enpre()],delimiter=',',dtype='S20')In [260]: aOut[260]: array(b"Cxc3xb4te d'Ivoire",  dtype='|S20')

并应用于

depre
各个元素:

In [261]: print(a.item().depre())Côte d'IvoireIn [325]: print _Côte d'Ivoire

或用于

np.char.depre
将其应用于数组的每个元素:

In [263]: np.char.depre(a)Out[263]: array("Côte d'Ivoire", dtype='<U13')In [264]: print(_)Côte d'Ivoire

genfromtxt
让我指定
converters

In [297]: np.genfromtxt([txt.enpre()],delimiter=',',dtype='U20',    converters={0:lambda x: x.depre()})Out[297]: array("Côte d'Ivoire", dtype='<U20')

如果

csv
混合使用字符串和数字,则此
converters
方法将比容易使用
np.char.depre
。只需为每个字符串列指定转换器。

(请参阅我先前对Python2尝试的编辑)。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/660548.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号