假设我们有一个努比·恩达雷与纽比街元素。例如,arr下面是努比·恩达雷有四个街道像这样的元素:
>>> print(arr)
['\tSTART\t 0\n' '12345 ABCDEFG' '1A 2B3C' '\nE N D']
有没有一种方法可以将arr
的内容写入到一个文件中,而不使用[
、]
和每个numpy.str_
元素的{
也就是说,这样写arr
:
另外,我是否可以打印numpy
数组的元素每行一个元素?理想情况下,这里也没有[
,]
和没有的'
。在
也就是说,要像这样打印arr
:
\tSTART\t 0\n
12345 ABCDEFG
1A 2B3
\nE N D
编辑
(1)如果试试这个
with open(resultfile, 'w') as f:
f.write(str(arr))
我明白了
['\tSTART\t 0\n' '12345 ABCDEFG' '1A 2B3C' '\nE N D']
(2)如果我尝试这个(如GreenHawk1220的回答所示)
A = str('\n'.join(arr))
B = ''.split(A)
del B[0]
# del B[-1] #Deletes end characters # *THIS GIVES INDEXERROR*
C = ''.join(B)
print(C)
with open(resultfile, 'w') as f:
f.write(C)
我没有得到任何东西(文件中没有可写的内容)。在
制作阵列:
连接到一个字符串中;相当于
^{pr2}$''.join(arr.tolist())
(实际上是''.join(list(arr))
)print/str
表示在\n
和{repr
引用了它们:f.write
也有相同的问题:这实际上不是字符串数组的问题。这是一个如何打印/写入包含}的字符串的问题。在
\n
和{评论后:
对于单个弦:
以防不明显,我在Py3中使用Ipython。Py2可能不同。在
encode
创建了一个带有额外\\t
等的bytestring。.decode
可用于将其转换回unicode以进行整洁打印:相关问题 更多 >
编程相关推荐