It's ...
Kirk Strauser
kirk at daycos.com
Thu Jun 25 11:31:47 EDT 2009
At 2009-06-24T19:53:49Z, Angus Rodgers <twirlip at bigfoot.com> writes:
> stop = 3 # Tab stops every 3 characters
> from types import StringType # Is this awkwardness necessary?
> detab = lambda s : StringType.expandtabs(s, stop) # Or use def
> f = open('h071.txt') # Do some stuff to f, perhaps, and then:
> f.seek(0)
> print ''.join(map(detab, f.xreadlines()))
> f.close()
An equivalent in modern Pythons:
>>> print ''.join(line.expandtabs(3) for line in file('h071.txt'))
In short: expandtabs is a method on strings, there's no need to seek to the
beginning, and files are closed when they are garbage collected (although I
can't make myself not close output files after years of doing so), and map()
is largely deprecated in favor of list comprehensions and generator
functions.
--
Kirk Strauser
The Day Companies
More information about the Python-list
mailing list