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 参数也可以在输出中禁止换行

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
 >>> 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() 的问题在于它仅仅适用于字符串。这意味着你通常需要执行另外一些转换才能让它正常工作

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
>>> 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
>>>
posted @ 2022-10-07 20:30  I'm_江河湖海  阅读(4)  评论(0编辑  收藏  举报