python 列表未显示完整元素
python list not showing full elements
我正在将图像插入到 Decaf 中,并希望从第 6、7、8 层提取特征。第6和第7应该是4096维,第8应该是1000.
我假设生成的输出功能类似于列表,并希望将每个元素记录在单独的文本文件中,如下所示:
def intoDecaf(image):
img = misc.imread(image)
fname = str(image)
fname = fname.replace('.jpg','')
print fname
scores = net.classify(img,center_only=True)
feat6 = net.feature('fc6_cudanet_out')
feat7 = net.feature('fc7_cudanet_out')
feat8 = net.feature('fc8_cudanet_out')
f6name = fname+'-f6.txt'
f7name = fname+'-f7.txt'
f8name = fname+'-f8.txt'
f6 = open(f6name,'w')
f7 = open(f7name,'w')
f8 = open(f8name,'w')
for f in feat6:
f6.write(str(f))
f6.write('\t')
# and the same for f7 and f8
f8 文件正确地包含 1000 个文件,但 f6 和 f7 文本文件具有如下内容:
[ -1.63451958 -8.0507412 -1.09678674 ..., 11.38702393 1.99127924
4.76321936]
中间的点就是这样。所有数字怎么了?这些点代表什么吗?某种删节?
这与无咖啡因或 python 有关吗?
看起来 feat6
是一个 NumPy 数组。
如果是这样,而不是
f6name = fname+'-f6.txt'
f6 = open(f6name,'w')
for f in feat6:
f6.write(str(f))
f6.write('\t')
f6.close()
使用
import numpy as np
f6name = fname+'-f6.txt'
np.savetxt(f6name, feat6, delimiter='\t')
这不包括方括号([
和 ]
),但这通常更可取,因为它使解析数据更容易。
当数组中的元素数量超过 threshold
时,NumPy 数组的 str
表示包含省略号,默认情况下 NumPy 设置为 1000。您可以通过 setting threshold
to some higher number 更改此设置:
import numpy as np
np.set_printoptions(threshold=10**6)
通过此更改,只要 f.size
小于 10**6,str(f)
就会 return 没有省略号的 f
的字符串化版本。
虽然这解释了为什么您会看到省略号,但我不建议在此处使用 np.set_printoptions
,因为 np.savetxt
可以更简单地解决您的问题。
我正在将图像插入到 Decaf 中,并希望从第 6、7、8 层提取特征。第6和第7应该是4096维,第8应该是1000.
我假设生成的输出功能类似于列表,并希望将每个元素记录在单独的文本文件中,如下所示:
def intoDecaf(image):
img = misc.imread(image)
fname = str(image)
fname = fname.replace('.jpg','')
print fname
scores = net.classify(img,center_only=True)
feat6 = net.feature('fc6_cudanet_out')
feat7 = net.feature('fc7_cudanet_out')
feat8 = net.feature('fc8_cudanet_out')
f6name = fname+'-f6.txt'
f7name = fname+'-f7.txt'
f8name = fname+'-f8.txt'
f6 = open(f6name,'w')
f7 = open(f7name,'w')
f8 = open(f8name,'w')
for f in feat6:
f6.write(str(f))
f6.write('\t')
# and the same for f7 and f8
f8 文件正确地包含 1000 个文件,但 f6 和 f7 文本文件具有如下内容:
[ -1.63451958 -8.0507412 -1.09678674 ..., 11.38702393 1.99127924
4.76321936]
中间的点就是这样。所有数字怎么了?这些点代表什么吗?某种删节? 这与无咖啡因或 python 有关吗?
看起来 feat6
是一个 NumPy 数组。
如果是这样,而不是
f6name = fname+'-f6.txt'
f6 = open(f6name,'w')
for f in feat6:
f6.write(str(f))
f6.write('\t')
f6.close()
使用
import numpy as np
f6name = fname+'-f6.txt'
np.savetxt(f6name, feat6, delimiter='\t')
这不包括方括号([
和 ]
),但这通常更可取,因为它使解析数据更容易。
当数组中的元素数量超过 threshold
时,NumPy 数组的 str
表示包含省略号,默认情况下 NumPy 设置为 1000。您可以通过 setting threshold
to some higher number 更改此设置:
import numpy as np
np.set_printoptions(threshold=10**6)
通过此更改,只要 f.size
小于 10**6,str(f)
就会 return 没有省略号的 f
的字符串化版本。
虽然这解释了为什么您会看到省略号,但我不建议在此处使用 np.set_printoptions
,因为 np.savetxt
可以更简单地解决您的问题。