I’m not an old hat programmer and have never been forced to use VIM, but I started learning how to navigate because of the potential efficiencies that comes with it, and because I like to learn new things. I’m not good at it, but I’ve gotten a lot better, and I will continue to do so because it’s enjoyable, neovim is extremely customizable, and the vim key bindings can be used in vscode for when I use that. I also use Linux, so it felt like the right direction to go, but mostly for the memes.
I don’t use it for high level language coding like python, JS, and definitely nothing.net related like c#, but it’s solid for lower level like C.
You don’t have to enjoy it, but there are some extremely skilled programmers out there that can code laps around other extremely skills programmers just because they use vim/neovim and can navigate at a stupid fast rate. Watching some like the Primeagen on YT is humbling.
Edit… I reread your comment and realized that python does it differently and that everything I typed was irrelevant… I’m still gonna leave it if anyone is interested in ternary expressions, but I suppose the answer to your question is, that’s just how python does it.
That’s how ternary operators are designed to work. In essence, if you’re looking to do a single line if/then, you can directly assign a variable from the result of a ternary expression.
As an example, I was scripting something earlier where there may or may not be a value returned from a function, but I still had to do something with that return value later. For this thing, I was using JavaScript.
I ended up with:
return platform == "name" ? "Option 1" : "Option 2"
If I were to write that out in a typical if/then it would be:
if (platform == "name") { return "option 1" } else { return "option 2" }
A ternary starts with a boolean expression, then the if true value, else the false value. That’s returned to either a variable or if in a function like my example, to the object calling the function. It’s just a way to write less code that in many cases is easier to read.