python print 使用分隔符 或行尾符
使用print() 函数输出数据,但是想改变默认的分隔符或者行尾符。
>>> print('ACME', 50, 91.5) ACME 50 91.5 >>> print('ACME', 50, 91.5, sep=',') ACME,50,91.5 >>> print('ACME', 50, 91.5, sep=',', end='!!\n') ACME,50,91.5!!
使用end 参数也可以在输出中禁止换行
>>> for i in range(5): ... print(i) ... 01234 >>> for i in range(5): ... print(i, end=' ') ... 0 1 2 3 4 >>>
也可以用join方式
>>> print(','.join('ACME','50','91.5')) ACME,50,91.5 >>>
str.join() 的问题在于它仅仅适用于字符串。这意味着你通常需要执行另外一些转换才能让它正常工作
>>> row = ('ACME', 50, 91.5) >>> print(','.join(row)) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: sequence item 1: expected str instance, int found >>> print(','.join(str(x) for x in row)) ACME,50,91.5 >>>
当然可以不用那么麻烦,仅仅只需要像下面这样写:
>>> print(*row, sep=',') ACME,50,91.5 >>>