0

我是 python 新手,想在用户名的值周围打印双引号,它的值在 main 中传递。我试着把\(反斜杠)没有帮助(使用python 3.3)

def Request(method,username,password):
  print ('</'+method+ 'Name='+username+ ' ' +'Password='+password+'/>') 

expectd output

</test Name="bob" Password="bob@123" />

 Request('test','bob','bob@123') calling the function
4

3 回答 3

2

你总是可以使用类似的东西:

'</%s Name="%s" Password="%s" />' % (method, username, password)
于 2013-02-02T04:22:49.597 回答
2

print('</{0} Name="{1}" Password="{2}"/>'.format(method, username, password))

String.format 是当今替换变量的首选方式。

您还可以使用命名值:

print('</{method} Name="{username}" Password="{password}/>'.format(method=method, username=username, password=password))

还有更多方法可以很好地格式化字符串。

查看http://docs.python.org/2/library/stdtypes.html#str.format了解更多信息。

于 2013-02-02T04:23:26.583 回答
0

最简单的方法是在函数调用中添加 '"' 字符串,如下所示:

def Request(username,password):
    print ('</' + 'Name=' + '"' + username + '"' + ' ' + 'Password=' + '"' + password + '"' +'/>') 
于 2013-02-02T04:23:08.343 回答