开发者

Python 3.2: How to pass a dictionary into str.format()

开发者 https://www.devze.com 2023-03-15 18:21 出处:网络
I\'ve been reading the Python 3.2 docs about string formatting bu开发者_如何学Got it hasn\'t really helped me with this particular problem.

I've been reading the Python 3.2 docs about string formatting bu开发者_如何学Got it hasn't really helped me with this particular problem.

Here is what I'm trying to do:

stats = { 'copied': 5, 'skipped': 14 }
print( 'Copied: {copied}, Skipped: {skipped}'.format( stats ) )

The above code will not work because the format() call is not reading the dictionary values and using those in place of my format placeholders. How can I modify my code to work with my dictionary?


This does the job:

stats = { 'copied': 5, 'skipped': 14 }
print( 'Copied: {copied}, Skipped: {skipped}'.format( **stats ) )  #use ** to "unpack" a dictionary

For more info please refer to:

  • http://docs.python.org/py3k/library/string.html#format-examples and
  • http://docs.python.org/py3k/tutorial/controlflow.html#keyword-arguments


you want .format(**stats) as that makes stats part of format's kwargs.

0

精彩评论

暂无评论...
验证码 换一张
取 消