我正在尝试使用python 2.7和:
b={'name':'abc',address:'xyz'}
print 'hello %(name)' % b
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-92-bc9585e20f74> in <module>()
----> 1 'hello %(name)' % b
我希望此声明会显示hello abc
,如何更正?
答案 0 :(得分:4)
结束)
后你错过了's':
print 'hello %(name)s' % b
因为你似乎是python的新手,所以你应该为将来做好准备并开始使用from __future__ import print_function
以及使用@Lolgast已经指出的.format()
:
from __future__ import print_function
b = {'name':'abc', address:'xyz'}
print('hello {name}'.format(**b))
答案 1 :(得分:2)
您可以使用string.format
功能:
b={'name':'abc',address:'xyz'}
print 'hello {name}'.format(**b) #Note that you need to explode the dict
答案 2 :(得分:1)
你应该这样试试
b={'name':'abc','address':'xyz'}
print 'hello %s' % b['name']