
在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'Ivoiregenfromtxt让我指定
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尝试的编辑)。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)