this post was submitted on 28 May 2025
726 points (96.3% liked)

Programmer Humor

23647 readers
1500 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 2 years ago
MODERATORS
 

Also, do y'all call main() in the if block or do you just put the code you want to run in the if block?

you are viewing a single comment's thread
view the rest of the comments
[–] 30p87@feddit.org 64 points 6 days ago* (last edited 6 days ago) (15 children)

Never heard of

def main():
    pass

if __name__ == '__main__':
    main()

?

[–] grrgyle@slrpnk.net 49 points 6 days ago (8 children)

I remember how weird this looked the first time I saw it and while I may now understand it, it still looks jank af

[–] Anomalocaris@lemm.ee 3 points 5 days ago (3 children)

I still wonder why.

unless it's for something that you want to work as an importable module and a standalone tool, then why do you need that?

[–] nickwitha_k 1 points 5 days ago* (last edited 5 days ago)

This is exactly why the conditional is used. It allows the script to function both as a standalone application and a library.

ETA: Probably would make sense to just treat it as default behavior in the interpreter and only require the conditional to overwrite in cases where main is not the main function and/or pre-processing is needed.

load more comments (2 replies)
load more comments (6 replies)
load more comments (12 replies)