(in Polish) Komunikacja z AI: Programowanie w Python 1 2600-ZLAIz1KAIPIf
Module 1 – Introduction: Development Environment and Python Basics
Information about the course, grading rules
Introduction to Python and its applications in business
• Why learn Python? Why learn programming if you don’t want to become a programmer?
• Examples: automation, data analysis, decision support
Development environment: Anaconda, Google Colab, Visual Studio Code
• Installing and configuring Anaconda for local work
• Running Python in the console
• Jupyter Notebook – the best invention since sliced bread
• Introduction to Google Colab as a cloud-based alternative: collaboration, leveraging Google’s server resources
• Visual Studio Code – coding like a professional ;)
• Differences, advantages, and limitations of various environments
Python as a smarter calculator
• Basic arithmetic operations
• Printing results
Numbers, text, and logical operations
• Variables, numbers, basic operations, comments, int, float, string, boolean
• Arithmetic and logical operators
Strings and text processing
• Handling client names, product categories, reviews
• String formatting (f-strings)
Module 2 – Control Flow, Loops, and Testing
Conditional statements and business logic
• If/else statements and decision rules
• Exercises: discount calculator, credit approval rules
Functions and reusable logic
• Defining functions
• Splitting code into reusable parts – best practices – “do one thing, but do it well”
Installing external Python libraries
• Using the package manager pip
• Virtual environments (venv)
Testing
• The pytest library
• Best practices
Module 3 – Working with Data Collections and Loops
Data structures – arrays, lists
• Lists: creating, modifying, basic operations
• append(), remove(), len(), indexing
• Iterating over lists
Examples
Loops
• For and while loops
• The range() function, iterating over lists
• Examples
Dictionaries and tuples
• Basics of dictionaries
• Creating, accessing values, methods keys(), values(), items()
• Tuples
Module 4 – Classes and Objects
Object-Oriented Programming – the concept
• Simple introduction (employees, products as objects)
• Classes and objects
• Adding behavior to objects – inheritance and polymorphism
Applications
• Using existing classes
• Creating custom classes and objects, initialization
Code organization and creating custom modules
• Importing built-in and custom modules
• Exercises: splitting business logic across files
• Best practices for structuring code in files/directories
Useful built-in modules
• datetime, math, random, os, pathlib, statistics
Version control (optional topic)
Module 5 – Input/Output Handling
Reading data
• Reading data interactively
Working with files
• Reading and writing files
• Error handling, exceptions
Reading data from the Internet
• Fetching web page content
• Data processing
• Web Services
Reading and writing files (CSV, Excel)
• Import/export of spreadsheet data
• Exercises: sales report analysis, employee attendance list
Module 6 – Using Artificial Intelligence
Introduction to AI – Large Language Models (LLMs)
• AI – an old acquaintance (neural networks, Machine Learning)
• LLMs – the (r)evolution of AI systems’ capabilities
Using AI for code generation
• Popular models
• Examples of usage, how to write effective prompts, context, tokens, cost considerations
Using AI libraries in your own programs
• AI libraries, configuration, API keys
• AI agents
• Do Androids Dream of Electric Sheep? – Model Context Protocol
Module 7 – Review and Final Project
Review of material
• Summary of the most important topics, discussion of the final project
Final project
• Implementation of the final project – all approaches are allowed
Type of course
Learning outcomes
SKILLS: GRADUATE IS ABLE TO:
K_U 03, K_U 05, K_U 09
• adapt existing methods and tools or propose new ones based on them, applying advanced information and communication techniques and appropriate selection of sources to identify, diagnose, and solve problems related to the use of artificial intelligence (AI) in the internal and external environment of an organization;
• propose solutions to tasks embedded in unpredictable conditions;
• enhance acquired qualifications, support others in this regard, and possesses the capacity for self-education (lifelong learning).
Assessment criteria
Review and assessment of Python programs written by students.
Bibliography
Notes prepared by the teacher