100 Days of Coding in Python

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Welcome to an intense session during which you will learn Python. This book will be your friend for the next 100 days to help you along the journey of learning the fundamentals of Computer Science and how to program them in Python. This book will provide you step by step focused daily theory and practice to help you master 1. programming foundation in Python; 2. main algorithms concepts; 3. popular data structures that you will encounter often in your life as a programmer; 4. design patterns that will help you in writing marvelous code. Why this Book Sure enough plenty of books have been written on Python and the official documentation is - and always will - remain the source of knowledge. A go-to for doubts. However, this book has been specifically designed to walk you through - step by step - not only Python syntax but also fundamental of computer science that will make you a well-rounded programmer. Who This Book is Meant For If you are new to programming - in general - this book is right for you. Indeed it walks through the core concept of programming as well as detailing relative Python implementations.

Author(s): Giuliana Carullo
Year: 2023

Language: English
Pages: 262

Table of Contents
Preface
Why this Book?
Who This Book is Meant For
Part 1 - The Basics
Introduction
The Study Plan
Where it All Begins
Fundamentals
The beloved hello world
The command line
.py code
The main
Coding Practice of the day
Basic Input/Output
Output manipulation
Give it to me!
Basic Types
Numeric Types
Strings
Other types
Coding Practice of the day
Structure of a Python Program
Statements and Expressions
Functions
Modules
Packages
Modular Programming
Import
Absolute vs relative
Importing a package
Putting it all together
Coding Practice of the day
Variables
Referencing
Keywords
What To Avoid
Convensions
Coding Practice of the day
Python Objects
Class
Initialization
Attributes
Methods
Functions
@properties
Coding Practice of the day
Polymorphism
Inheritance
This is…Super!
Overload
Override
Types of Inheritance
Coding Practice of the day
Composition
Rule of Thumb
Coding Practice of the day
Conditional Flows
If statement
Multiple Checks
Membership
Coding Practice of the day
Loops
While
For
Further Modifying the Flow
Break
Continue
pass
Coding Practice of the day
Error Handling
Coding Practice of the day
Documentation
The Syntax
If the Code is Good I don’t need Comments Philosophy
Conditions and Flows
IO Definition
Inline Comments
TODOs
That's Obvious
Did you just lie to that programmer?
Comments Driven Development (CDD)
Coding Conventions
Coding Practice of the day
Part 2 - Algorithms
Introduction
Recursion
Coding Practice of the day
Iteration
Coding Practice of the day
Greedy Agorithms
Thinking Greedy
Coding Practice of the day
Dynamic Programming
Coding Practice of the day
NP-Hard problems
Coding Practice of the day
Part 3 - Data Structures
Introduction
Intro to Data Structures
Array
Internals
Coding Practice of the day
Linked-List
Internals
Coding Practice of the day
Doubly Linked-List
Internals
Coding Practice of the day
Stack
Internals
Coding Practice of the day
Queue
Internals
Coding Practice of the day
Hash Map
Internals
Coding Practice of the day
Binary Search Trees
Internals
Coding Practice of the day
Takeaway
Further Reading
Part 4 - Design Patterns
Introduction
Design Patterns
Creational
Singleton
The code
Don'ts
Coding Practice of the day
Lazy Initialization
The Code
Don'ts
Coding Practice of the day
Builder
The Code
Don'ts
Coding Practice of the day
Abstract Factory
The Code
Don'ts
Coding Practice of the day
Factory Method
The Code
Don'ts
Coding Practice of the day
Structural
Adapter
What
How
When
Don'ts
Coding Practice of the day
Decorator
What
How
When
Don'ts
Coding Practice of the day
Facade
What
How
When
Don'ts
Coding Practice of the day
Composite
What
How
When
Don'ts
Coding Practice of the day
Behavioural
Observer
What
How
When
Don'ts
Coding Practice of the day
Publisher-Subscriber
What
How
When
Don'ts
Coding Practice of the day
Iterator
What
How
When
Don'ts
Coding Practice of the day
Visitor
What
How
When
Don'ts
Coding Practice of the day
State
What
How
When
Don'ts
Coding Practice of the day
Chain of Responsibility
What
How
When
Don'ts
Coding Practice of the day
Part 5 - Solutions
The Basics
Basic types
Structure of a Python Program
Variables
Python Objects
Polymorphism
Conditional Flows
Loops
Errors
Documentation
Algorithms
Data Structures
Array
Linked-List
Stack
Queue
HashMap
Binary Search Tree
Design Patterns
Conclusions
About the author
More from Giuliana Carullo
More from Giuliana Carullo
Feedback and Errata
References