Suggested coding style

Steven D'Aprano steve+comp.lang.python at pearwood.info
Sun Sep 25 04:36:42 CEST 2011


MRAB wrote:

> On 24/09/2011 20:10, Tim Johnson wrote:
>> * Passiday<passiday at gmail.com>  [110924 09:47]:
>> <...>
>>> I have been coding in many other languages, most of the time it was
>>> Java and C#. I don't like the function mess of PHP (ie, loads and
>>> loads of functions without any namespaces etc), but I'd like to think
>>> that Python is different.
>>    It is ...
>>
>>> In my brief coding experience I have stumbled upon Python zfill(width)
>>> method, and I thought, really, do you have to include such a narrow-
>>> purpose method in the basic method set? Perhaps there are more such
>>> methods that are nice when you need them, but then again, you don't
>>> put all the possible methods in the standard set.
>>    I think that you have raised an interesting question here. I've
>>    been coding in python for 9 years and I have never used it.
>>
>>> Perhaps there is reason such method is in the basic library, and my
>>> complaints are unbased?
>>
>>    It could be some sort of legacy. I imagine we will hear from some
>>    more senior pythonists on this matter.
>>
> The documentation says "New in version 2.2.2".

Which is about nine years old, so roughly half as old as Python itself. 
It's hardly a new feature.

Just because Passiday and Tim don't use zfill doesn't mean it's not useful 
to some people. Here are examples of it in use, or people asking how to 
format numbers with leading zeroes:

http://www.ruby-forum.com/topic/67378
http://stackoverflow.com/questions/134934/display-number-with-leading-zeros
http://stackoverflow.com/questions/733454/best-way-to-format-integer-as-string-with-leading-zeros
http://msdn.microsoft.com/en-us/library/dd260048.aspx
http://www.ozgrid.com/forum/showthread.php?t=64193&page=1

http://www.google.com/codesearch#algXCqBNNP0/utils/zip2rep.py&q=lang:%5Epython$%20zfill%20case:yes&ct=rc&cd=7

http://www.google.com/codesearch#Wnd3W7C0RPM/lives_guide.tar.bz2%7C0MIk12cLwTg/desub.py&q=lang:%5Epython$%20zfill%20case:yes

Padding numbers with leading zeroes is very common. I'm surprised that 
more languages don't make it a string method.



-- 
Steven




More information about the Python-list mailing list