Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #99983
| Path | csiph.com!goblin2!goblin1!goblin.stu.neva.ru!takemy.news.telefonica.de!feedme.news.telefonica.de!telefonica.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail |
|---|---|
| From | Adam Funk <a24061@ducksburg.com> |
| Newsgroups | comp.lang.python |
| Subject | Re: getting fileinput to do errors='ignore' or 'replace'? |
| Date | Thu, 03 Dec 2015 19:21:41 +0000 |
| Organization | $CABAL |
| Lines | 25 |
| Message-ID | <5bh6jcxtas.ln2@news.ducksburg.com> (permalink) |
| References | <fn26jcxltl.ln2@news.ducksburg.com> <8336jcxi2m.ln2@news.ducksburg.com> <mailman.180.1449161351.14615.python-list@python.org> |
| X-Trace | individual.net /UmUi1MwbgDE0vRSvGr23AR4UzGCrCq6BSHWt+0ka4IGDx7MF2 |
| X-Orig-Path | news.ducksburg.com!not-for-mail |
| Cancel-Lock | sha1:V5GJG3+8Fj+iay09wsCMWcVhe0k= sha1:XMpAZKudXYmEWu8KCUhJ78HPrMQ= |
| User-Agent | slrn/pre1.0.3-5 (Linux) |
| Xref | csiph.com comp.lang.python:99983 |
Show key headers only | View raw
On 2015-12-03, Terry Reedy wrote: > fileinput is an ancient module that predates iterators (and generators) > and context managers. Since by 2.7 open files are both context managers > and line iterators, you can easily write your own multi-file line > iteration that does exactly what you want. At minimum: > > for file in files: > with codecs.open(file, errors='ignore') as f > # did not look up signature, > for line in f: > do_stuff(line) > > To make this reusable, wrap in 'def filelines(files):' and replace > 'do_stuff(line)' with 'yield line'. I like fileinput because if the file list is empty, it reads from stdin instead (so I can pipe something else's output into it). Unfortunately, the fix I got elsewhere in this thread doesn't seem to work for that! -- Science is what we understand well enough to explain to a computer. Art is everything else we do. --- Donald Knuth
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
getting fileinput to do errors='ignore' or 'replace'? Adam Funk <a24061@ducksburg.com> - 2015-12-03 15:12 +0000
Re: getting fileinput to do errors='ignore' or 'replace'? Adam Funk <a24061@ducksburg.com> - 2015-12-03 15:18 +0000
Re: getting fileinput to do errors='ignore' or 'replace'? Peter Otten <__peter__@web.de> - 2015-12-03 17:11 +0100
Re: getting fileinput to do errors='ignore' or 'replace'? Adam Funk <a24061@ducksburg.com> - 2015-12-03 19:17 +0000
Re: getting fileinput to do errors='ignore' or 'replace'? Terry Reedy <tjreedy@udel.edu> - 2015-12-03 11:48 -0500
Re: getting fileinput to do errors='ignore' or 'replace'? Adam Funk <a24061@ducksburg.com> - 2015-12-03 19:21 +0000
Re: getting fileinput to do errors='ignore' or 'replace'? Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2015-12-03 22:26 +0000
Re: getting fileinput to do errors='ignore' or 'replace'? Serhiy Storchaka <storchaka@gmail.com> - 2015-12-04 10:34 +0200
Re: getting fileinput to do errors='ignore' or 'replace'? Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2015-12-04 09:00 +0000
Re: getting fileinput to do errors='ignore' or 'replace'? Adam Funk <a24061@ducksburg.com> - 2015-12-07 14:46 +0000
Re: getting fileinput to do errors='ignore' or 'replace'? MRAB <python@mrabarnett.plus.com> - 2015-12-03 16:12 +0000
Re: getting fileinput to do errors='ignore' or 'replace'? Laura Creighton <lac@openend.se> - 2015-12-03 17:46 +0100
Re: getting fileinput to do errors='ignore' or 'replace'? Adam Funk <a24061@ducksburg.com> - 2015-12-03 19:17 +0000
Re: getting fileinput to do errors='ignore' or 'replace'? Laura Creighton <lac@openend.se> - 2015-12-03 21:40 +0100
csiph-web