Certificate of Completion - Practical Python unit testing with Pytest + mocking |Pycharm

I earned a Certificate of Completion that verifies that I successfully completed the beginner-level “Practical Python unit testing with Pytest + mocking |Pycharm” course on 11/28/2021 as taught by instructor Faisal Memon at Udemy Academy. Faisal Memon is a Google Launchpad Accelerator. The certificate indicates the entire course was completed as validated by the student. The course duration represents the total video hours of the course at the time of most recent completion. Length 3.5 total hours. What I learned in the course: • Assertion • Fixtures and yield with fixtures • Test exceptions • Markers – xfail, skip, parameterized • Learn about mocking and how to create mocks to cut down dependencies – parameterized, verifying mocks, mocking JSON values • Learn how can you mock APIs and verify it You can find this course at https://www.udemy.com/course/practical-unit-testing-for-python-with-pytest-and-mocking/

Python Modulo in Practice: How to Use the % Operator

I completed two tutorials on Modulo in Python and Modulo in Maths. o First, I completed “Python Modulo in Practice: How to Use the % Operator” basic-level tutorial offered by Real Python. The instructor of the tutorial is Jason Van Schooneveld. Using type hints makes it easier for you to reason about code, find subtle bugs, and maintain a clean architecture. In this tutorial I learned about: • Modulo Operator With int • Modulo Operator With float • Modulo Operator With decimal.Decimal • Modulo Operator With Custom Classes • Modulo Operator With a Negative Operand • Modulo Operator and divmod() • Modulo Operator Precedence • How to Check if a Number Is Even or Odd • How to Run Code at Specific Intervals in a Loop • How to Create Cyclic Iteration • How to Convert Units • How to Determine if a Number Is a Prime Number • How to Implement Ciphers You can find this tutorial at · https://realpython.com/python-modulo-operator/ o Second, I completed a Computer Science module on Cryptography at Khan Academy. In this tutorial I learned about: • Congruence modulo • Congruence relationship • Equivalent relationships • The quotient remainder theorem • Modular addition, substruction, multiplication • Modular exponentiation • Fast modular exponentiation • Modular inverse • The Euclidian Algorithm You can find this tutorial at · https://www.khanacademy.org/computing/computer-science/cryptography/modarithmetic/a/fast-modular-exponentiation · https://github.com/csknk/fast-modular-exponentiation

Python's Class Development Toolkit

I completed a tutorial by Raymond Hettinger “Python's Class Development Toolkit” on YouTube. The major takeaway from this excellent tutorial: • In Python it is normal to expose your attribute. When you expose an attribute expect users to do all kinds of interesting things with it. • Customers change the functionality of your code usually through subclassing. Customers can overwrite the parent class's method by writing the same named method in their subclass. If the parent method is called in subclass - it is called extending. If the parent method is not called in the subclass - it is called overwriting. • When there is a constructor war everyone should win provided the alternative constructors. The technique for doing this is @classmethod, parameter to it is 'cls', be sure you use this parameter because it will support subclassing. • If the class function doesn't need to know anything about the instance use @staticmethod on it. The purpose of the @staticmethod is to attach functions to classes. Use it to improve the findability of a function. • Micromanagement: e.g. government request: they tell you how to do your product. • The purpose of double underscore, what is called a class local reference, we are to make sure that self is actually refers to the parent class and not to self in a subclass. Most of the time self means the parent or your children. But occasionally it needed to be only the parent self. Thus, the double underscore is used! The intention of the double underscore is that self refers to you and not to a child self subclass. Double underscore will name mangle for parent self and rename this variable to '_parentClassName__variable' and if subclass will also make double underscore for the same variable it will not overwrite parent variable but simply Python will name mangle and rename it to '_childClassName__variable'. Double underscore is about freedom. It makes your subclass free to over-cry any other method without breaking any others. • @property's getter and setter convert dotted attribute access to method calls. This allows exposing our attribute and if we may need to fix this attribute later we use @property and the code remains with no changes. • Optimization tool when scaling up to a million of instances: '__slots__' is a flyweight design pattern that suppresses the instance dictionary and frees up space. It shrinks the size of the instance. Do __slots__ at the end of the project. __slots__ don't affect subclass attributes. • Agile and Lean program management. • Nice to be fully documented as you can run it through Spinx and make a pdf out of it for the users and managers. You can find this tutorial at: https://www.youtube.com/watchv=HTLu2DFOdTg&ab_channel=NextDayVideo

Codewars.com

In the Python Bootcamp course by Giles McMullen-Klein he advised using codewars.com website in order to keep practicing coding every day. I have been practicing coding on that website regularly. It allows me to understand what I can do in practice, where my mistakes are, and what are the best practices for the same problems. Really an excellent tool for practicing! My rank there at the moment is 6 kyu.

Certificate of Completion - Python 3: Deep Dive (Part 1 - Functional)

I earned a Certificate of Completion that verifies that I successfully completed the intermediate to advance "Python 3: Deep Dive (Part 1 - Functional)" course on 10/22/2021 as taught by instructor Fred Baptiste at Udemy Academy. Fred Baptiste is a Professional Developer and Mathematician. The certificate indicates the entire course was completed as validated by the student. The course duration represents the total video hours of the course at the time of most recent completion. Length 44.5 total hours. What I learned in the course: • An in-depth look at variables, memory, namespaces, and scopes • A deep dive into Python's memory management and optimizations • Run-time vs compile-time and how that affects function defaults, decorators, importing modules, etc • In-depth understanding and advanced usage of Python's numerical data types (Booleans, Integers, Floats, Decimals, Fractions, Complex Numbers) • Advanced Boolean expressions and operators • Function Parameters like position and keyword arguments, unpacking iterables, *args, **kwargs • Build-in data structures like tuples, namedtuples, dictionaries, lists, sets, and array • Advanced usage of callables including functions, lambdas, and closures • Functional programming techniques such as map, reduce, filter, zip, and partials • Create advanced decorators, including parametrized decorators, class decorators, and decorator classes • Advanced decorator applications such as memoization and single dispatch generic functions • Tuples as data structures and Named Tuples • Use and understand Python's complex Module and Package system • Idiomatic Python and best practices • Understand Python's compile-time and run-time and how this affects your code • Avoid common pitfalls • Python versions updates starting from 3.6 till the most recent one You can find this course at https://www.udemy.com/course/python-3-deep-dive-part-1/

1 ... 9 10 11 ... 13

Our Sidebar

You can put any information here you'd like.

  • Latest Posts
  • Announcements
  • Calendars
  • etc