Python 在列表中的元素前面添加符号
我有一个返回列表的函数:Python 在列表中的元素前面添加符号,python,list,Python,List,我有一个返回列表的函数: a = [1,2,-3,-4,0,4,0,-2] 有没有办法在列表中的非负值前面添加“+”号?如果您只想更改整数的repr和strrepr表示,那么您可以将int子类化: class Myint(int): def __repr__(self): if self > 0: return '+{}'.format(self) else: return '{}'.format(s
a = [1,2,-3,-4,0,4,0,-2]
有没有办法在列表中的非负值前面添加“+”号?如果您只想更改整数的
repr
和str
repr表示,那么您可以将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
如果您只想更改整数的
repr
和str
表示,则可以将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
你为什么要那样做?只是好奇我们能不能那样做。那是我不认为这是个好主意<代码>+4是一个字符串。如果没有一些额外的处理,你就不能进行整数运算。@karthikr列表是一个字符串。。这就是我问的原因。你为什么要这样做?只是好奇我们是否可以这样做。。这都是我不认为这是个好主意<代码>+4是一个字符串。如果没有额外的处理,就不能进行整数运算。@karthikr列表是一个字符串。。这就是我问的原因。