A post about how this community's banner used the python 2 print syntax - print "Hello World" - made me question, can we print a hello world message in Python 3 without using parentheses?
It turned out to be sort of a fun challenge, I've found 3 different approaches that work. I'd be interested to see what you come up with! (it seems I can't put spoilers in Lemmy, so I won't share my solutions yet in case y'all want to have a go).
Edit: Posted my solutions in the comments
12 Comments
jsalvador@programming.dev · 6 pts · 3y
Just one question: why?
sisyphean@programming.dev · 5 pts · 3y
You can put spoilers in posts or comments this way:
Here is how it renders:
::: spoiler Title Secret :::
(AFAIK apps don't render these correctly, only the website)
nydas@lemmy.world · 6 pts · 3y
Can confirm not hiding on Memmy
Pabo@feddit.nl · 5 pts · 3y
Same on Jerboa. Though given the apps' fast development progress we probably won't have to wait too long :)
pythonoob@programming.dev · 1 pts · 3y
Not working on connect either
jormaig@programming.dev · 3 pts · 3y
You could base64 encode the solution
McCheng@lemmy.fmhy.ml · 3 pts · 3y
But then you still need to use parentheses to decode it
jormaig@programming.dev · 2 pts · 3y
Ah sorry I meant for the spoiler. He could base64 the solution given that he doesn't know how to do spoilers on lemmy
qwop@programming.dev · 1 pts · 3y
Ah true that would have worked, figured since spoilers don't work on most apps I might as well just post them.
McCheng@lemmy.fmhy.ml · 2 pts · 3y
Gave some thoughts but couldn't find any. I need the solutions
qwop@programming.dev · 7 pts · 3y
Alright, here are my solutions :)
Not the most technically interesting, but a fun Easter egg!
Decorators are another way of calling a function, so can be abused to solve this task. You need to decorate a class rather than a function though, since a function definition requires parentheses!
There might be some other Dunder methods you can use to do this, although it's sort of difficult since most (e.g.
__add__) only describe behaviour on the instance of the class.Writing number 3 made me realise I just needed to find a class that already had an instance and change that. I'm sure there are many other cases of this, but here's one!
McCheng@lemmy.fmhy.ml · 1 pts · 3y
Very interesting solutions. I was in the direction of using dunder methods but could not figure out how. Haven't heard of the
__class_getitem__. The second solution is especially inspiring.