Python's popularity has steadily increased over the years due to its simplicity, readability, and extensive libraries. According to the TIOBE Index, Python consistently ranks among the top programming languages, making it a valuable skill in today's job market.
Its clean syntax and intuitive nature make it an excellent choice for beginners, while its powerful features and vast ecosystem of libraries cater to the needs of experienced developers. Our Python course is perfect for both beginners and experienced programmers who are ready to start or advance their Python training.
In coding, Python is widely used for web development, data analysis, scientific computing, machine learning, and artificial intelligence. By enrolling in our Python coding course, you will gain a solid foundation in Python programming and become equipped with the skills and knowledge needed to build numerous applications, from simple scripts to complex web applications.
In this Python developer course, you will explore Python's applications, gain advanced sorting techniques for efficient data organization, and master mathematical operations and data manipulation. You will also understand how to perform complex numerical computations with NumPy and write modular, write reusable code with object-oriented programming in Python, and more.
Instructor(s):Nat Dunn
Nat Dunn founded Webucator in 2003 to combine his passion for technical training with his business expertise and to help companies benefit from both. His previous experience was in sales, business and technical training, and management. Nat has an MBA from Harvard Business School and a BA in International Relations from Pomona College.
Requirements:
Hardware Requirements:
- This course can be taken on a PC or a Mac.
- Dual monitors are helpful but not required.
Software Requirements:
- PC: Windows 10 or later.
- Mac: macOS 11.0 or later.
- Browser: The latest version of Google Chrome or Mozilla Firefox are preferred. Microsoft Edge and Safari are also compatible.
- Python (download and installation instructions are provided in course).
- Adobe Acrobat Reader.
Other:
- Email capabilities and access to a personal email account.
Instructional Material Requirements:
The instructional materials required for this course are included in enrollment and will be available online.
Hide Syllabus
Lesson 1
- Introduction to Python
- Python Basics
- Getting Familiar with the Terminal
- Running Python
- Running a Python File
- Exercise: Hello, world!
- Literals
- Exercise: Exploring Types
- Variables
- Exercise: A Simple Python Script
- Constants and Deleting Variables
- Writing a Python Module
- print() Function
- Collecting User Input
- Exercise: Hello, You!
- Reading from and Writing to Files
- Exercise: Working with Files
- Functions and Modules
- Defining Functions
- Variable Scope
- Global Variables
- Function Parameters
- Exercise: A Function with Parameters
- Returning Values
- Exercise: Parameters with Default Values
- Returning Values
- Importing Modules
- Methods vs. Functions
- Math
- Arithmetic Operators
- Exercise: Floor and Modulus
- Assignment Operators
- Precedence of Operations
- Built-in Math Functions
- The math Module
- The random Module
- Exercise: How Many Pizzas Do We Need?
- Exercise: Dice Rolling
- Python Strings
- Quotation Marks and Special Characters
- String Indexing
- Exercise: Indexing Strings
- Slicing Strings
- Exercise: Slicing Strings
- Concatenation and Repetition
- Exercise: Repetition
- Combining Concatenation and Repetition
- Python Strings are Immutable
- Common String Methods
- String Formatting
- Exercise: Playing with Formatting
- Formatted String Literals (f-strings) (introduced in Python 3.6)
- Built-in String Functions
- Exercise: Outputting Tab-delimited Text
- Iterables: Sequences, Dictionaries, and Sets
- Definitions
- Sequences
- Lists
- Sequences and Random
- Exercise: Remove and Return Random Element
- Tuples
- Ranges
- Converting Sequences to Lists
- Indexing
- Exercise: Simple Rock, Paper, Scissors Game
- Slicing
- Exercise: Slicing Sequences
- min(), max(), and sum()
- Converting between Sequences and Strings
- Unpacking Sequences
- Dictionaries
- The len() Function
- Exercise: Creating a Dictionary from User Input
- Sets
- *args and **kwargs
- Virtual Environments, Packages, and pip
- Exercise: Creating, Activiting, Deactivating, and Deleting a Virtual Environment
- Packages with pip
- Exercise: Working with a Virtual Environment
- Flow Control
- Conditional Statements
- Compound Conditions
- The is and is not Operators
- all() and any() and the Ternary Operator
- In Between
- Loops in Python
- Exercise: All True and Any True
- break and continue
- Looping through Lines in a File
- Exercise: Word Guessing Game
- The else Clause in Loops
- Exercise: for...else
- The enumerate() Function
- Generators
- List Comprehensions
- Exception Handling
- Exception Basics
- Generic Exceptions
- Exercise: Raising Exceptions
- The else and finally Clauses
- Using Exceptions for Flow Control
- Exercise: Running Sum
- Raising Your Own Exceptions
- Python Dates and Times
- Understanding Time
- The time Module
- Time Structures
- Times as Strings
- Time and Formatted Strings
- Pausing Execution with time.sleep()
- The datetime Module
- datetime.datetime Objects
- Exercise: What Color Pants Should I Wear?
- datetime.timedelta Objects
- Exercise: Report on Departure Times
- File Processing
- Opening Files
- Exercise: Finding Text in a File
- Writing to Files
- Exercise: Writing to Files
- Exercise: List Creator
- The os Module
- os.walk()
- The os.path Module
- A Better Way to Open Files
- Exercise: Comparing Lists
- PEP8 and Pylint
- PEP8
- Pylint
- Advanced Python
- Advanced Python Concepts
- Lambda Functions
- Advanced List Comprehensions
- Exercise: Rolling Five Dice
- Collections Module
- Exercise: Creating a defaultdict
- Counters
- Exercise: Creating a Counter
- Mapping and Filtering
- Mutable and Immutable Built-in Objects
- Sorting
- Exercise: Converting list.sort() to sorted(iterable)
- Sorting Sequences of Sequences
- Creating a Dictionary from Two Sequences
- Unpacking Sequences in Function Calls
- Exercise: Converting a String to a datetime.date Object
- Modules and Packages
- Regular Expressions
- Regular Expression Tester
- Regular Expression Syntax
- Python's Handling of Regular Expressions
- Exercise: Green Glass Door
- Working with Data
- Virtual Environment
- Relational Databases
- Passing Parameters
- SQLite
- Exercise: Querying a SQLite Database
- SQLite Database in Memory
- Exercise: Inserting File Data into a Database
- Drivers for Other Databases
- CSV
- Exercise: Finding Data in a CSV File
- Creating a New CSV File
- Exercise: Creating a CSV with DictWriter
- Getting Data from the Web
- Exercise: HTML Scraping
- XML
- JSON
- Exercise: JSON Home Runs
- Testing and Debugging
- Testing for Performance
- Exercise: Comparing Times to Execute
- The unittest Module
- Exercise: Fixing Functions
- Special unittest.TestCase Methods
- Classes and Objects
- Attributes
- Behaviors
- Classes vs. Objects
- Attributes and Methods
- Exercise: Adding a roll() Method to Die
- Private Attributes
- Properties
- Exercise: Properties
- Objects that Track their Own History
- Documenting Classes
- Exercise: Documenting the Die Class
- Inheritance
- Exercise: Extending the Die Class
- Extending a Class Method
- Exercise: Extending the roll() Method
- Static Methods
- Class Attributes and Methods
- Abstract Classes and Methods
- Understanding Decorators
- Python Data Analysis with JupyterLab
- JupyterLab
- Exercise: Creating a Virtual Environment
- Exercise: Getting Started with JupyterLab
- Jupyter Notebook Modes
- Exercise: More Experimenting with Jupyter Notebooks
- Markdown
- Exercise: Playing with Markdown
- Magic Commands
- Exercise: Playing with Magic Commands
- Getting Help
- NumPy
- Exercise: Demonstrating Efficiency of NumPy
- NumPy Arrays
- Exercise: Multiplying Array Elements
- Multi-dimensional Arrays
- Exercise: Retrieving Data from an Array
- More on Arrays
- Using Boolean Arrays to Get New Arrays
- Random Number Generation
- Exploring NumPy Further
- pandas
- Getting Started with pandas
- Introduction to Series
- np.nan
- Accessing Elements in a Series
- Exercise: Retrieving Data from a Series
- Series Alignment
- Exercise: Using Boolean Series to Get New Series
- Comparing One Series with Another
- Element-wise Operations and the apply() Method
- Series: A More Practical Example
- Introduction to DataFrames
- Creating a DataFrame using Existing Series as Rows
- Creating a DataFrame using Existing Series as Columns
- Creating a DataFrame from a CSV
- Exploring a DataFrame
- Exercise: Practice Exploring a DataFrame
- Changing Values
- Getting Rows
- Combining Row and Column Selection
- Boolean Selection
- Pivoting DataFrames
- Be careful using properties!
- Exercise: Series and DataFrames
- Plotting with matplotlib
- Exercise: Plotting a DataFrame
- Other Kinds of Plots
Hide Syllabus