In the second article of this short series we will create a class for a generic neural network and we will also see how to assess the quality of the output of a network, essentially preparing ourselves to implement the backpropagation algorithm.
This is the first article in a series to implement a neural network from scratch. We will set things up in terms of software to install, knowledge we need, and some code to serve as backbone for the remainder of the series.
Learn the ins and outs of comparison operator chaining, and especially the cases you should avoid.
Deep unpacking (or nested unpacking) provides a more powerful way for you to write assignments in your code. Deep unpacking can be used to improve the readability of your code and help protect you against unexpected bugs. Learning about deep unpacking will also be very important in order to make the most out of the structural matching feature that is to be introduced in Python 3.10.
You are sunbathing when you decide to go and talk to some friends under a nearby sun umbrella, but first you want to get your feet wet in the water. What is the most efficient way to do this?
Recursion is a technique that you should have in your programming arsenal, but that doesn't mean you should always use recursion when writing Python code. Sometimes you should convert the recursion to another programming style or come up with a different algorithm altogether.
All Python objects can be used in expressions that should
return a boolean value, like in an if
or while
statement.
Python's built-in objects are usually Falsy (interpreted as False
)
when they are βemptyβ or have βno valueβ and otherwise they
are Truthy (interpreted as True
).
You can define this behaviour explicitly for your own
objects if you define the __bool__
dunder method.
This problem is a step up from Problem #028 - hidden key. Can you tackle this one?
Python's str
and repr
built-in methods are similar, but not the same.
Use str
to print nice-looking strings for end users and use repr
for debugging
purposes.
Similarly, in your classes you should implement the __str__
and __repr__
dunder methods with these two use cases in mind.
Nowadays stores come up with all sorts of funky promotions to catch your eye... But how much money do you actually save with each type of promotion?
The walrus operator :=
can be really helpful, but if you use it in convoluted
ways it will make your code worse instead of better.
Use :=
to flatten a sequence of nested if
s or to reuse partial computations.
There is a key hidden in one of three boxes and each box has a coin on top of it. Can you use the coins to let your friend know where the key is hiding?
In Python, if you are doing something that may throw an error, there are many
cases in which it is better to "apologise than to ask for permission".
This means you should prefer using a try
block to catch the error,
instead of an if
statement to prevent the error.
How should you unpack a list or a tuple into the first element and then the rest? Or into the last element and everything else? Pydon't unpack with slices, prefer starred assignment instead.
Five sailors and their monkey were washed ashore on a desert island. They decide to go get coconuts that they pile up. During the night, each of the sailors, suspicious the others wouldn't behave fairly, went to the pile of coconuts take their fair share. How many coconuts were there in the beginning..?
The "Zen of Python" is the set of guidelines that show up in your screen if you import this
. If you have never read them before, read them now and again from time to time.
If you are looking to write Pythonic code, write code that abides by the Zen of Python.
I bet you have seen one of those Facebook publications where you have a grid and you have to count the number of squares the grid contains, and then you jump to the comment section and virtually no one agrees on what the correct answer should be... Let's settle this once and for all!
Alice and Bob sit down, face to face, with a chessboard in front of them. They are going to play a little game, but this game only has a single knight... Who will win?
"Pydon'ts" are short, to-the-point, meaningful Python programming tips. Pydon'ts will help you write more Pythonic code.
Some people are standing quiet in a line, each person with a hat that has one of two colours. How many people can guess their colour correctly?