this post was submitted on 05 Sep 2023
1211 points (97.3% liked)

Programmer Humor

18979 readers
1589 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] Jakylla@sh.itjust.works 2 points 11 months ago (2 children)

4 Spaces, then one tab, then 3 spaces, then 2 tabs, then 2 spaces, then 3 tabs...

Python supports that (and I hate this)

[–] realaether@lemmy.world 1 points 11 months ago* (last edited 11 months ago) (1 children)

Please elaborate (eg which standard is this defined in?)

[–] Jakylla@sh.itjust.works 1 points 11 months ago* (last edited 11 months ago) (1 children)

Not any standard (and actually not at all something to do for real), but try it, it works

def magic(a, b, c):
    if a > 0:
    	if b > 0:
    	   		if c > 0:
    	   		  return 'All positive'
    
    return 'Not all positive'

print(magic(1,2,3))
print(magic(-1,1,2))
print(magic(1,-1,0))
print(magic(-1,-1,-2))

(you should be able to verify I used both tab and spaces f*cking bad way in this example, like I described)

Output:

All positive
Not all positive
Not all positive
Not all positive


** Process exited - Return Code: 0 **
Press Enter to exit terminal
[–] realaether@lemmy.world 2 points 11 months ago

That's really interesting. So does that mean the interpreter just checks whether the current line is more indented, less indented, or equal vs. the preceding, without caring by how much?

[–] grozzle@lemm.ee 0 points 11 months ago

"indentation is indentation!" (mr_incredible_cereal.jpg)

it may look messy, but would you actually rather Python didn't support some inconsistency when the intent is clear?

being exact just for the sake of being pedantic isn't useful.