Python:如何打印非字符串数组?

标签 python arrays

我是 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/

相关文章:

python 解析lxml中的特殊字符

python - Django 管理 ListView

php str_getcsv 数组问题

Python:如何用最少的代码扩展一个巨大的类?

arrays - 在 Swift 中定义数组

python - 套餐可以永久使用吗?

python - pandas 中的多索引数据帧的分组和求和

python - 当我尝试连接 Box.com 的 API 时,rauth2 解码器无法处理 access_token

Java改变数组中整数的位置

php - 从多维无限父子树创建菜单