@brettcannon @tonybaloney or trying to cover all the bases to make sure that the anonymous reviewer of your paper is referenced!
@mariatta I think, and I’m by no means an expert, when you click on that link you’re going to their server, not yours. That’s why you need to log in.
But you can copy-paste that link in your search bar and then just click follow
@tonybaloney I’m glad I don’t write academic writing anymore. I enjoyed bits of it, but not the having to decide what to reference or not bit
@Crocmagnon unless I’m getting posting on this platform completely wrong. But I hope not.
The first post is public, the others unlisted but you should still see them as replies to the first post/toot
@Crocmagnon it’s a thread so you should be able to see the rest once you expand/click on the post
As of Python 3.10, all the binary search helpers in the bisect module now accept a key argument.
Read the full article: What's great about Python 3.10?
▸ https://trey.io/ci2i5f
@brianokken @mfitzp isn’t it just with hashtags?
Here's an example:
You have a number of teams of people:
`teams = [["Bob", "Mary"], ["James", "Kate"], ["Bob", "Mary"]]`
Unfortunately, Bob and Mary are common names and there are two teams that each have a Bob and a Mary. I know, the coincidence of that!
`>>> teams[0] == teams[2]`
`True`
But, they're not the same team! They're different people!
`>>> teams[0] is teams[2]`
`False`
If you want to know whether these are the same teams, you need \`is\' in this case
@trinsec It's a lot more likely to need `==`, but the use of `is` does come about when you need to check that two objects are the exact same ones. It's not that uncommon.
Also, some prefer to use `is` with singletons such as `None`
`if stuff is None:`
Although in this case, there's no difference between `==` and `is` as there is only one `None`
But, there are times when you want to know that an object is exactly the same object and not just equal in value.
In these cases, you'll need to use \`is\`.
As a general rule, use \`==\` by default unless you know you need \`is\`.
But now can we stop squabbling about who the £5 note belongs to?!
/5
Sorry, the serial number of the note shows it’s \__mine_\_!
This \***is**\* my note. In this case, it wasn’t \`==\` that matters but \`is\`
With a #Python object, the built-in \`id()\` function gives you the "serial number", which is unique for each object, just as the serial number on a bank note is unique.
In #programming, as in the case with bank notes, you often care more about the value of an object rather than its identity.
So, you'll often need \`==\` just like the barista in the coffee shop didn't care about the £5 note's serial number.
/4
Its value is no longer what matters now.
We both had a £5 note.
What matters is whether this is the actual physical note that was in my pocket or yours.
Luckily, we're both geeks and we keep a record of the serial numbers of all the notes we carry with us on our phone.
I know, that's quite sad.
And quite unlikely, too.
But bear with me.
So, we both get our phones out to check the serial numbers on record against the serial number on the £5 note on the floor.
You can see the serial number in two places on the £5 note.
/3
So, does it matter which £5 note we use to pay?
No, all the barista cares about is that \`our_payment == 5\`
So \__you_\_ can pay. Thank you!
In this case, the \***value**\* of the £5 note is what matters, not which actual physical note we use.
But let's assume we're chatting and we spot a £5 note on the floor.
We both check our pockets and we realise we've both lost our £5 note.
Is the note on the floor mine or yours?
/2
Have you heard the one about \`is\`, \`==\`, and the £5 note that it's your pocket?
You may have already come across the fact that \`is\` and \`==\` are not the same in Python and cannot be used interchangeably… if you haven't, you heard it now!
But why? Let's see what the £5 note has got to do with this story
Let's assume you and I both have a £5 note in our pocket
_[replace with currency of choice]_
and
_[read "bill" instead of "note" if you wish]_
We meet up and go to a coffee shop nearby to buy two coffees which cost £5 altogether
Does it matter which £5 note we use to pay?
/1
_[this is like a Netflix series you can binge on, no need to wait until next week for the next episode, read on in the next toot in this thread…]_
@akhmxt Good luck, and there will be many of us here who can help, too. Just ask!
@DruidSmith @mmdolbow @GeoDon Yep, I think we all have our favourites! It doesn't really matter, is my mantra!
@GeoDon If you're unhappy with your IDEs, by all means do try others (PyCharm and VS Code the most popular these days), but don't let anyone tell you you must use XYZ, as they're just suggesting their IDE, not the best one!
@mapperwocky @GeoDon There's no best IDE/editor, there's only the best IDE/editor for **you**!
@GeoDon My answer to all IDE questions is, do whatever you're more comfortable with!
What Python IDE do you use?
@folkerschamel after all, there's also this in the docs: https://docs.python.org/3/faq/programming.html#faq-argument-vs-parameter
• Rethinking how to teach programming – I prefer the friendly, relaxed approach when communicating about Python programming
• I write about Python on The Python Coding Book blog and on Real Python
• Former Physicist
• Expect posts on scientific and numerical programming –> NumPy, Matplotlib and friends!