On Sunday, 17 June 2018 11:00:50 UTC+5:30, Ben Finney wrote: > Sharan Basappa <sharan.basa...@gmail.com> writes: > > > I think I am now confused with format options in Python. > > You should refer to the documentation for string formatting > <URL:https://docs.python.org/3/library/stdtypes.html#str.format> > <URL:https://docs.python.org/3/library/string.html#formatstrings> > > (or, if you want to continue with the older less-flexible style, > <URL:file:///usr/share/doc/python3/html/library/stdtypes.html#printf-style-string-formatting>) > > > I tried an example as below and both print proper value: > > > > age = 35 > > > > print "age is %s" % age > > The ‘s’ format specifier says “Ask the object for its text > representation, and put that text here”. > > Every object has a text representation, so ‘s’ works with any object. > > > print "age is %d" % age > > The ‘d’ format specifier says “Format the integer as a decimal text > representation, and put that text here”. > > Only objects that are integers (or that implement the format-as-decimal > API) will work with ‘d’. > > > I other languages I know the format specifier should be same as the > > variable type. For example, in the above case, it has to be %d and not > > %s > > Because you are explicitly specifying which formatting to use, there's > no ambiguity. With an object that is an integer, either of the above > makes sense in different use cases. > > -- > \ “A right is not what someone gives you; it's what no one can | > `\ take from you.” —Ramsey Clark | > _o__) | > Ben Finney
Thanks a lot. -- https://mail.python.org/mailman/listinfo/python-list