如何在Python中的int之前添加加号?

Fai*_*ter 0 python arrays numpy

我需要以非常特定的格式生成输出,并且正整数必须在它们前面有一个加号.我正在使用numpy数组,并尝试这样的东西:

    if(int(P[pnt])>0):
        P[pnt] += np.insert(P[pnt-1],0,"+")
Run Code Online (Sandbox Code Playgroud)

但它永远不会添加加号作为数字的一部分,而是作为一个不同的实例..

我也尝试将其保存在不同的文件中,然后从那里修改它(使用re.sub()等...)但没有运气:(

我的输出看起来像这样:

(+1 2 -4 +5 -3)
(+1 2 3 -5 4)
(+1 2 3 -4 5)
(+1 2 3 4 5)
Run Code Online (Sandbox Code Playgroud)

并且应该如下所示:

(+1 +2 -4 +5 -3)
(+1 +2 +3 -5 +4)
(+1 +2 +3 -4 +5)
(+1 +2 +3 +4 +5)
Run Code Online (Sandbox Code Playgroud)

如有必要,我可以分享整个代码......

谢谢!!:)

Nic*_*k T 7

使用.format()Python格式迷你语言.你想要+ 签名选项.

'{:+}'.format(3)  # "+3"
'{:+}'.format(-3) # "-3"
Run Code Online (Sandbox Code Playgroud)

可以坚持:

a = numpy.array([1, 2, -4, 5, -3])
print '(' + ' '.join('{:+}'.format(n) for n in a)) + ')'
# (+1 +2 -4 +5 -3)
Run Code Online (Sandbox Code Playgroud)