[Tutor] How to skip to next line in for loop
Brain Stormer
brnstrmrs at gmail.com
Fri May 2 16:34:23 CEST 2008
f=open('file.txt',r)
position =False
for line in f.read().split():
if position == True
print line
position = False
if line == "3":
position = True
else:
position = False
f.close()
On Fri, May 2, 2008 at 10:28 AM, Brain Stormer <brnstrmrs at gmail.com> wrote:
> You are correct. It is missing the ":" and it will print "3"
>
> On Fri, May 2, 2008 at 10:18 AM, bob gailer <bgailer at gmail.com> wrote:
>
> > Brain Stormer wrote:
> >
> > > Well,
> > > I was somewhat confused with all of the answers so I decided to go
> > > with my/following method. Kent's method has 4 fewer lines of code than
> > > mine and cleaner. Please correct me if I am fundamentally wrong.
> > >
> > > f=open('file.txt',r)
> > >
> > > for line in f.read().split():
> > > if line == "3"
> > > position = True
> > > else:
> > > position = False
> > > if position == True
> > > print line
> > > position = False
> > > f.close()
> > >
> > > Yikes! That won't compile (missing : at end of if statements). After
> > correcting, will print 3.
> >
> > How about this if you want less lines of code:
> >
> > f = open('file.txt',r).readlines()
> > print f[[x+1 for x,line in enumerate(f) if line.rstrip() == "3"][0]]
> >
> >
> > --
> > Bob Gailer
> > 919-636-4239 Chapel Hill, NC
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20080502/ff41731c/attachment-0001.htm>
More information about the Tutor
mailing list