Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Python > Re: Problem with the "for" loop syntax

Reply
Thread Tools

Re: Problem with the "for" loop syntax

 
 
Joshua Landau
Guest
Posts: n/a
 
      06-20-2013
On 20 June 2013 04:11, Cameron Simpson <(E-Mail Removed)> wrote:
> Also, opening-and-not-closing a set of brackets is almost the only
> way in Python to make this kind of error (syntax at one line, actual
> mistake far before).
>
> See if your editor has a show-the-matching-bracket mode.

<snip>
> If you suspect you failed to close a bracket, one approach is to
> go _below_ the syntax error (or right on it) and type a closing
> bracket. Then see where the editor thinks the opening one is.


Thanks for that, that's quite an ingenious technique.
 
Reply With Quote
 
 
 
 
Neil Cerutti
Guest
Posts: n/a
 
      06-20-2013
On 2013-06-20, Joshua Landau <(E-Mail Removed)> wrote:
> On 20 June 2013 04:11, Cameron Simpson <(E-Mail Removed)> wrote:
>> Also, opening-and-not-closing a set of brackets is almost the
>> only way in Python to make this kind of error (syntax at one
>> line, actual mistake far before).
>>
>> See if your editor has a show-the-matching-bracket mode.
>> If you suspect you failed to close a bracket, one approach is
>> to go _below_ the syntax error (or right on it) and type a
>> closing bracket. Then see where the editor thinks the opening
>> one is.

>
> Thanks for that, that's quite an ingenious technique.


The auto-indent feature of Vim catches this type of syntax error,
and I imagine other good autoindent support will do the same.
After I press enter and the following line's indent isn't what I
expect, it is nearly always due to a missing bracket, quote or
colon.

So if you press enter and the autoindent is unexpected, don't
just press space or backspace to fix it. It's usually a sign of
an earlier syntax error, so look for that first.

--
Neil Cerutti
 
Reply With Quote
 
 
 
 
Chris Angelico
Guest
Posts: n/a
 
      06-20-2013
On Thu, Jun 20, 2013 at 11:55 PM, Neil Cerutti <(E-Mail Removed)> wrote:
> On 2013-06-20, Joshua Landau <(E-Mail Removed)> wrote:
>> On 20 June 2013 04:11, Cameron Simpson <(E-Mail Removed)> wrote:
>>> Also, opening-and-not-closing a set of brackets is almost the
>>> only way in Python to make this kind of error (syntax at one
>>> line, actual mistake far before).
>>>
>>> See if your editor has a show-the-matching-bracket mode.
>>> If you suspect you failed to close a bracket, one approach is
>>> to go _below_ the syntax error (or right on it) and type a
>>> closing bracket. Then see where the editor thinks the opening
>>> one is.

>>
>> Thanks for that, that's quite an ingenious technique.

>
> The auto-indent feature of Vim catches this type of syntax error,
> and I imagine other good autoindent support will do the same.
> After I press enter and the following line's indent isn't what I
> expect, it is nearly always due to a missing bracket, quote or
> colon.
>
> So if you press enter and the autoindent is unexpected, don't
> just press space or backspace to fix it. It's usually a sign of
> an earlier syntax error, so look for that first.


Yes, though editors (like everything else!) can be buggy - SciTE, for
instance, has a bug with handling two adjacent braces in C code:

void dummy_function() {}
//SciTE will indent after that line

But autoindentation is a *hugely* valuable feature, because it gives
INSTANT feedback. You hit enter, the line is indented, you expected no
indent, problem found. And I've even used it as a means of probing -
if there's a problem in this area somewhere, I just go to the middle
of the area, hit enter to insert a blank line, and see if the
indentation is wrong. If it is, the problem's in the top half, else
the problem's in the bottom half. That is: The problem is in the
top-if-indentation-wrong-else-bottom half, using Python's ternary
syntax. Or the (indentation-wrong? top: bottom) half, in C notation.
Or... okay, I'll stop now.

ChrisA
 
Reply With Quote
 
Cameron Simpson
Guest
Posts: n/a
 
      06-20-2013
On 20Jun2013 13:55, Neil Cerutti <(E-Mail Removed)> wrote:
| On 2013-06-20, Joshua Landau <(E-Mail Removed)> wrote:
| > On 20 June 2013 04:11, Cameron Simpson <(E-Mail Removed)> wrote:
| >> Also, opening-and-not-closing a set of brackets is almost the
| >> only way in Python to make this kind of error (syntax at one
| >> line, actual mistake far before).
| >>
| >> See if your editor has a show-the-matching-bracket mode.
| >> If you suspect you failed to close a bracket, one approach is
| >> to go _below_ the syntax error (or right on it) and type a
| >> closing bracket. Then see where the editor thinks the opening
| >> one is.
| >
| > Thanks for that, that's quite an ingenious technique.
|
| The auto-indent feature of Vim catches this type of syntax error,
| and I imagine other good autoindent support will do the same.

Interesting. I use autoindent but grew up with it for prose.
I hadn't realised vim's support inderstaood python indentation.
I'll have to pay more attention...
--
Cameron Simpson <(E-Mail Removed)>

Do I have it all? Yes.
Do I want more? Yeah, sure. - Demi Moore
 
Reply With Quote
 
Neil Cerutti
Guest
Posts: n/a
 
      06-21-2013
On 2013-06-20, Cameron Simpson <(E-Mail Removed)> wrote:
> On 20Jun2013 13:55, Neil Cerutti <(E-Mail Removed)> wrote:
>| On 2013-06-20, Joshua Landau <(E-Mail Removed)> wrote:
>| > On 20 June 2013 04:11, Cameron Simpson <(E-Mail Removed)> wrote:
>| >> Also, opening-and-not-closing a set of brackets is almost the
>| >> only way in Python to make this kind of error (syntax at one
>| >> line, actual mistake far before).
>| >>
>| >> See if your editor has a show-the-matching-bracket mode.
>| >> If you suspect you failed to close a bracket, one approach is
>| >> to go _below_ the syntax error (or right on it) and type a
>| >> closing bracket. Then see where the editor thinks the opening
>| >> one is.
>| >
>| > Thanks for that, that's quite an ingenious technique.
>|
>| The auto-indent feature of Vim catches this type of syntax error,
>| and I imagine other good autoindent support will do the same.
>
> Interesting. I use autoindent but grew up with it for prose. I
> hadn't realised vim's support inderstaood python indentation.
> I'll have to pay more attention...


A standard Vim install autoindents Python tolerably well if
you've set filetype=python. If you've got a baked-in Python
interpreter you can get even more bells and whistles. The
standard executable installs I could find don't support Python 3,
so I haven't seen all the great stuff I'm missing.

--
Neil Cerutti
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Problem with the Java Access Bridge and the screenreader JAWS Markus Lemcke Java 3 05-07-2013 05:27 PM
Software must support the user's settings for font size but how itworks with swing? Markus Lemcke Java 6 05-01-2013 05:16 PM
How to capture the “same” RGB images for the same scene using EDSDK? azuring@gmail.com Digital Photography 0 04-28-2013 12:08 PM
Help with printing a bit pattern with printf and %x matt.jaffe@gmail.com C Programming 9 04-19-2013 12:14 PM
SimpleHTTPRequestHandler used with HTTP/1.1 hangs after the secondresource on a page. Piotr Dobrogost Python 3 04-13-2013 05:21 PM



Advertisments