2014-07-11 24 views
3

如何在python输出中使用多个%s?Python - multiple%s字符串

TEXT = 'Hi, your first name is %s' %Fname 

这工作得很好,但...

TEXT = 'Hi, your first name is %s and your last name is %s' %Fname %Lname 

我得到的错误

TypeError: not enough arguments for format string 

回答

16

使用一个元组:

TEXT = 'Hi, your first name is %s and your last name is %s' % (Fname, Lname) 

更好:使用str.format(*args, **kwargs)

"Hi, your first name is {0} and your last name is {1}".format("foo", "bar") 
0
TEXT = 'Hi, your first name is %s and your last name is %s' %(Fname, Lname) 

TEXT ='Hi, your first name is {} and your last name is {}'.format(Fname, Lname) 
+0

无论是不是有效的Python。 –

+0

现在检查它的更新代码 – jainvikram444

+0

第一行无效:',%'不起作用。 –

1

您需要使用的元组:

TEXT = 'Hi, your first name is %s', % (Fname) 
TEXT = 'Hi, your first name is %s and your last name is %s' % (Fname, Lname) 

而且,考虑使用format()

0

我喜欢用字符串格式代替。

所以

TEXT = 'Hi, your first name is {} and your last name is {}'.format(Fname, Lname) 
0

给所有变量中的元组,像这样:

TEXT = 'Hi, your first name is %s and your last name is %s.' %(Fname,Lname) 
相关问题