我是 python 的新手,我想知道如何打印类 fracture 的对象。 str 函数设置正确,我猜
def __str__(self):
if self._denominator == 1:
return str(self._numerator)
else:
return str(self._numerator)+'/'+str(self._denominator)
因为
>>>print ('%s + %s = %s' % (f1,f2,f1+f2))
1/3 + -1/4 = 1/12
现在我想把它正确地打印成一个排序数组,我希望得到类似的东西
>>>print(', '.join(("Sam", "Peter", "James", "Julian", "Ann")))
Sam, Peter, James, Julian, Ann
但这对我的骨折甚至数字(如 print(' < '.join((1,2,3)))
)都不起作用
我得到的是:
for i in range(len(fractures)):
if i+1 == len(fractures):
print (fractures[i])
else:
print (fractures[i], end=' < ')
这真的是最好的解决方案吗?与使用字符串的简单程度相比,这把代码搞得一团糟......
最佳答案
如果你想打印“1 < 2 < 3”,你需要做的就是将类型从 int 更改为字符串:
print(' < '.join(str(n) for n in (1,2,3)))
关于Python:如何打印非字符串数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34744894/