"""
Yixuan
"""
"""
Q_1:
So, we use a list when we want to contain similar items, but use a tuple when we know what information goes into it.

Q_2:
A set stores distinct values of the same type in a collection with no defined ordering. ... A dictionary stores associations between keys of the same type and values of the same type in a collection with no defined ordering.

Q_3:
NO
Comparing floats for almost-equality measures if the floats have nearly the same value. Due to the finite precision of floats, rounding errors can result in slightly different values depending on how they are computed. For example, 0.1 + 0.2 == 0.30000000000000004. Checking for near equality instead of equality sidesteps this issue.

Q_4:
A lambda function is a small anonymous function and lambda can take any number of arguments, but can only have one expression.
The difference is that (a) the body of a lambda can consist of only a single expression, the result of which is returned from the function created and (b) a lambda expression is an expression which evaluates to a function object, while a def statement has no value, and creates a function object and binds
(missing pass as a parameter)

Q_5:
A module is a single file (or files) and package is a collection of modules in directories that give a package hierarchy.
(missing multi-)

Q_6:
A recursive function is a function that calls itself during its execution.
Recursion well be slow

Q_7:
Unique values with unexplained meaning or multiple occurrences which could (preferably) be replaced with named constants
Increase the chance of minor errors
Replace magic numbers with symbolic constants

Q_8:
Run it several times to try out every possibility

Q_9:
Planning, analysis, design, development and implementation, testing

Q_10:
Comments and documents, code grouping, consistent naming scheme, avoid deep nesting, limit line length
"""