Python for Beginners is an online course tailored for students eager to dive into the world of Python programming. This course will guide you through the essentials of Python, from setting up and navigating Python environments to writing your first scripts. You will gain hands-on experience in scripting, explore the fundamentals of Object-Oriented Programming (OOP), and develop Python scripts using popular libraries and packages. Whether you are new to coding or looking to enhance your skills, this course provides a solid foundation for Python programming and practical implementation. 

The objectives of the course:

  • Getting familiar with the Python environments

  • Learning the basics of Python scripting

  • Learning the basics of Object-Oriented Programming

  • Developing Python scripts using popular python packages

 

Syllabus:

Theme

Units

Opening meeting

Zoom meeting: Overview of course structure, grading, and expectations. Learn to install Python, set up IDEs, navigate materials, submit assignments, and access support, ensuring a smooth start to your learning journey.

Introduction

Unit 1: Course Overview – Introduction to course objectives, expectations, and study materials. Learn how to navigate the online platform and organize your learning process effectively.

Unit 2: What is Python? – Understand the fundamentals of Python, its history, applications, and advantages. Get familiar with coding environments like IDLE and PyCharm.

Unit 3: Writing Your First Script – Learn how to write, execute, and debug basic Python scripts using IDLE and PyCharm, building confidence in your coding abilities

Python basics

Unit 1: Introduction to Programming – Explore programming concepts: compilation vs. interpretation, Python’s advantages and limitations, and working in environments like IDLE, PyCharm, and ArcGIS Pro.

Unit 2: Core Python Elements – Learn about numbers, variables, expressions, functions, user input, and comments. Develop basic interactive scripts.

Data Structures

Unit 1: Sequences – Understand different sequence types (lists, tuples, strings) and their properties, including indexing, slicing, and iteration.

Unit 2: Lists – Learn about list creation, modification, iteration, and common list operations like sorting and filtering.

Unit 3: Tuples – Explore immutable sequences, when to use tuples, and how they compare to lists.

Data Structures

Unit 1: Sets – Discover how sets store unique elements, perform set operations, and apply them in real-world scenarios.

Unit 2: Dictionaries – Learn how key-value pairs work, dictionary methods, and efficient data retrieval techniques.

Unit 3: Strings – Master string manipulation techniques, including formatting, concatenation, slicing, and built-in string functions.

Conditionals & Loops

Unit 1: Conditional Statements – Implement decision-making using if, else, and elif statements. Learn Boolean logic and logical operators.

Unit 2: Loops for Efficiency – Master for and while loops for repetitive tasks and learn how to exit loops using break and continue statements.

Unit 3: Key Statements – Explore multi-line statements, return, try-except error handling, with statements for resource management, and other key Python constructs.

Functions

Unit 1: Defining and Calling Functions – Learn how to create reusable functions, pass parameters, and return values to write clean, modular code.

Unit 2: Recursive Functions – Understand recursion, how it differs from iteration, and its role in solving complex problems efficiently.

Polymorphism

Unit 1: Introduction to OOP – Learn about classes, objects, and how OOP principles improve code structure and reusability.

Unit 2: Encapsulation, Inheritance & Abstraction – Discover the power of class inheritance, encapsulation, and abstraction for designing scalable applications.

Object Oriented Programming (OOP)

Unit 1: Implementing Classes & Objects – Create classes with constructors, properties, and methods to represent real-world entities.

Unit 2: Extending Classes – Learn how to design complex classes, reuse code through inheritance, and implement internal and external class structures.

Mid-course meeting

Zoom meeting: Review of Lessons 1-8 – Recap key concepts, clarify doubts, and prepare for the next phase of the course.

Advanced themes in Python IDEs

Unit 1: Debugging & Testing – Use debugging tools, error tracing, and testing techniques to improve code quality and performance.

Unit 2: Exception Handling – Handle runtime errors using try-except blocks to make programs more robust and reliable.

Unit 3: Project Development – Learn how to structure Python projects using Jupyter Notebooks, ArcGIS Notebooks, and integrate Python with GIS tools.

Files and Databases

Unit 1: Handling Files – Read, write, and process CSV and text files efficiently in Python.

Unit 2: Database Connectivity – Connect to Microsoft Access and SQL Server using PYODBC, write queries, and manage relational data.

Extending python

Unit 1: NumPy Library – Use NumPy for numerical computing, including array operations and mathematical computations.

Unit 2: Pandas Library – Learn how to manipulate structured data using Pandas for analysis and visualization.

Extending python cont.

Unit 1: Matplotlib for Data Visualization – Generate plots and graphs to visualize data effectively.

Unit 2: SciPy for Scientific Computing – Work with SciPy’s advanced mathematical and statistical functions.

Course Summary

Zoom meeting: Summarize key topics, address remaining questions, and discuss the format of the final exam.