在列表中的元素前面添加符号

时间:2013-11-08 21:38:00

标签: python list

我有一个返回列表的函数:

a = [1,2,-3,-4,0,4,0,-2]

我们是否可以在列表中的非负值前添加“+”符号?

1 个答案:

答案 0 :(得分:1)

如果您只想更改整数的reprstr表示,那么您可以继承int

class Myint(int):
    def __repr__(self):
        if self > 0:
            return '+{}'.format(self)
        else:
            return '{}'.format(self)

    #similarly override `__str__` as well
...         
>>> a = [Myint(x) for x in (1,2,-3,-4,0,4,0,-2)]
>>> a
[+1, +2, -3, -4, 0, +4, 0, -2]
>>> a[0]
+1