在python中打印和连接语句

时间:2014-02-21 09:27:15

标签: python join printing sequence

我是python的新手。我有一个序列,我可以使用join方法打印它,并能够分别打印序列的长度。我无法将两者打印在一起。到目前为止我是:

>>> str = "-";
>>> seq = ("a", "b", "c"); 
>>> print str.join( seq );
   a-b-c
>>> print len(seq)
   3

我想在一行中同时打印str.join(seq)len(seq),有些lines就像这样(我想要的输出):

The join output is: a-b-c   The length is: 3 

所有这一切都在一行中。可以在python吗?

3 个答案:

答案 0 :(得分:4)

首先,不要将str用作变量名称。这是一个内置的;使用它作为变量名称意味着您无法访问它(例如将其他项目转换为字符串)。

其次,我建议在这里使用字符串格式:

print "The join output is: {0}. The length is: {1}.".format("-".join(seq), 
                                                            len(seq))

答案 1 :(得分:1)

seq = ('a', 'b', 'c')
joined = '-'.join(seq)
print('The join output is:', joined, 'The length is:', len(seq))

print('The join output is: ' + joined + ' The length is: ' + str(len(seq)))

答案 2 :(得分:-1)

是的我第二个@jonrsharpe str 是buit-in并且使用不应该使用该名称。

print " The join o/p is %s and The length is %s"%(s.join(seq),len(s.join(seq)))

这里你的长度不是3,因为你已经加了2' - '。如果你想计算不包括' - ',那么使用下面的行。

print " The join o/p is %s and The length is %s"%(s.join(seq),len(s.join(seq).replace('-','')))