2

我有一个来自 datetime 的 numpy 日期对象数组,我必须将其转换为字符串,以便可以将其用作 SQL 语句的一部分(对于 mysql)。一般来说,这工作得很好:

dats = str(dates_list)
dats = string.replace(dats[1:-1],' ',"','")

除非它足够长以print dates_list显示...(例如:)print numpy.arange(4000)

我尝试直接使用repr特殊方法(是的,我知道我不应该这样做),它应该提供可用于重建对象的字符串表示形式。显然,我无法使用[ 0 1 2 ..., 4997 4998 4999].

如何获得整个数组的字符串表示形式?

4

1 回答 1

3

转换为列表似乎有效:

dats = str(list(dates_list))

但更正确的选择是更改 numpy 的 printoptions。有一个threshold选项可以设置打印摘要而不是完整代表的限制。默认值为 1000。您可以将其更改为无穷大:

import numpy as np
np.set_printoptions(threshold=np.inf)

dats = str(dates_list)
于 2012-11-26T10:17:49.257 回答