A couple of Hacker Schoolers were discussing an interesting corner of python today. We discovered a nice bit of trivia: there exist three lines of python code that display the following behavior:
1 2 3 4 5 6 7 8 9 10 11 12
What are the lines?
Some ground rules:
- Introspection of any kind is cheating (e.g. noting the line number).
- No dunder (
__foo__) methods allowed.
- Each line is a valid python expression.
- You can’t rely on order: while the lines will always execute A –> B –> C, a complete solution behaves identically if e.g. the semicolon version happens before the separate-line version.
- No cheating with the function: e.g. you can’t add a
returnunless you add it everywhere.
- Edit: And nothing stateful.
For bonus points, code golf! My solution to this is
14 19 characters long, not counting whitespace.