Python Fundamentals Training for Non-Programmers
Course 1904
2 DAY COURSE
Course Outline
This hands-on course is intended for those individuals with little or no software development experience. Starting with the most fundamental elements, this training evolves your skills to produce complete computer applications, including the user interface, business logic and data access layers. During the course, attendees will write code using Python, one of the most popular modern languages and highly suitable for beginners. Development techniques include requirements, design, code generation, testing and debugging.
Of special note, this course combines adaptive learning (AdaptaLearn) with the use of Generative AI (Chat.OpenAI) to accelerate your pace of learning and ability to do hands-on development work. This will ensure you are highly productive Python programmers the moment you return to your office. A post-course AI-driven hands-on practicum is provided for ongoing practice and improvement.
With this course, you will gain all the pre-requisite skills necessary to carry on to more language-specific training appropriate for the type of applications your organization needs, be they data science, web development, embedded real-time systems or other.
Python Fundamentals Training for Non-Programmers Benefits
-
In this Python for Non-Programmers course, you will learn how to:
- Begin developing modern computer applications.
- Design and implement an application using Python.
Write cohesive object-oriented logic (classes and libraries). - Leverage Generative AI (Chat.OpenAI) and modern integrated development tools (PyCharm) for code editing, execution, testing, and debugging.
- Access data files to save and restore persistent information.
-
Prerequisites
Basic computer literacy is expected. Attendees will need to know how to use Microsoft Windows to edit and copy files both in Windows Explorer and via a command prompt. Prior programming experience is not needed.
Python Training for Non-Programmers Course Outline
Chapter 1 – Starting to Program
Principles of Programming
- How computers solve problems
- Language types and evolution
- Procedural logic
- Object Orientation
- Bugs and other challenges
Syntax and Semantics
- About Python
- Statements and comments
- Literals, Variables and Data Types
- Collection Types
- Expressions and Operators
- Strings, Concatenation, and type conversion
- Demo – accessing exercise computers and Py
- Hands-On Exercise – First Python program using Py
Chapter 2 – Development Tools
Program Layout and Organization
- Modules and Packages
- Integrated Development Environments (IDEs)
- Introduction to PyCharm
Chapter 3 – Controlling Program Flow
Making Decisions with Conditionals
- if/elif/else statements
- Criteria expressions
- in and not in
Repeating Program Logic with Loops
- Counting loops and for/Range
- For-each Loops
- Iterating a List
- Loop control
Writing and Calling Functions
- Function definition
- return statement
- Accepting parameters
- Returning results
- Importing modules and functions
- Cross-module calls
- Calling library functions
Chapter 4 – Object-Oriented Programming
Why Object Oriented?
- Challenges with purely procedural code
- Global variables – not the solution
- Principles and style of object orientation
Classes and Objects
- Defining classes
- Properties vs local variables
- Methods vs functions
- Creating objects
- Object state and instance data
Chapter 5 – User Interfaces and Events
Graphical UI Frameworks
- 3-layer model
- What is a framework?
- Framework choices
- GUI Philosophy
- Why Tkinter (tinker)
Windows, Frames and Widgets
- Familiar widgets – from labels to radio buttons
- The GUI class structure and layout
- Adding widgets to a form
- Geometry manager
- pack(), vs grid() vs place()
- Adding widgets to a frame
- Adding a frame to a window
- Using grids – automatic rows and columns
- Tk Choice properties
- Radio button example
Events and Event Binding
- Philosophy of event-driven programming
- Event types
- Binding to events using bind()
- Button click event
- Keyboard enter-key event
- Choice widget command options
- Command response function vs event method
- Discussion – An event has happened, now what?
- Hands-On Exercise – Adding events for the case study.
Chapter 6 – Input and Output
Accessing Files
- Types of data input
- Flat vs serialization vs big data vs database
- I/O streams
- Opening modes – read, write and append
- New files vs appending
- Reading/writing binary, raw and character data
- Handling exceptions
- Preventing exceptions
Chapter 7 – Leveraging Generative AI
Capabilities and Concepts of Gen AI
- The AI megatrend
- How GenAI works
- The promise and the pitfalls
- AI Ethics
Preparing AI prompts and queries
- Elements of an effective prompt
- Succinct polite queries
- Background...Goal...Rationale format
- Repeat and regenerate until satisfied.
- Designing the post-course practicum
Chapter 8 – Course Summary
Next Steps
Private Team Training
Interested in this course for your team? Please complete and submit the form below and we will contact you to discuss your needs and budget.
- choosing a selection results in a full page refresh