Bachelor
2020/2021
Introduction into Python
Type:
Compulsory course (Information and Communication Technologies and Systems)
Area of studies:
Infocommunication Technologies and Systems
Delivered by:
School of Electronic Engineering
When:
3 year, 2 module
Mode of studies:
distance learning
Instructors:
Igor Nazarov
Language:
English
ECTS credits:
3
Contact hours:
2
Course Syllabus
Abstract
The goal of the course is to introduce students to Python Version 3.x programming using hands on instruction. It will show how to install Python and use the Spyder IDE (Integrated Development Environment) for writing and debugging programs. The approach will be to present an example followed by a small exercise where the learner tries something similar to solidify a concept. At the end of each module there will be an exercise where the student is required to write simple programs and submit them for grading. It is intended for students with little or no programming background, although students with such a background should be able to move forward at their preferred pace. https://www.coursera.org/learn/python-programming-introduction
Learning Objectives
- Have • an understanding of the basic principles of Python • the skill to meaningfully develop a program Know • basic Python Syntax • basic Python Libraries • basic Python Functions Be able to • create simple programs • work with datatypes • convert datatypes
Expected Learning Outcomes
- -To know the concept of functions in Python
- -Be capable of using basic functions like “if” and different types of loops
- -Be able to convert datatypes
- -To know how to work with lists
- -To know the difference between running Python programs on Mac and Windows
- -Be able to work with CSV files
- -Be able to use tuples and data dictionaries
- -Be able to build lists of various
- -Be able to sort lists -Be able to edit records and load them from CSV files
Course Contents
- Week 1: Beginning to Program in PythonIntroduction and first functions. Videos: • Welcome and introduction • Introduction to the Spyder IDE • Arithmetic operations • Our first functions • Creating strings and using them in print statements • The "input" statement and combining strings • Using the "if" statement • Converting strings to numbers. Using the remainder operator • Introduction to loops - the "while" loop • The "for" loop; tracking down errors Materials for self-study: • Setting up Spyder • Starting Python. Our first lecture and exercise file. • Exercises1.py -- the exercise/lecture file for this module. • Note about a minor problem with Spyder • Practice functions for debugging Python code
- Week 2: Working with Lists and Importing Libraries. The Random libraryLists, datatypes, libraries, the random library. Videos: • Introduction to lists • Lists continued • Stepping through lists using loops • Introduction to datatypes • Converting datatypes • Working with lists of sublists; writing a small report • Lists continued • Introduction to libraries. The random library • More on Loops and Append Materials for self-study: • Exercises 2 -- the exercise/lecture file for this module
- Week 3 Tuples, Data Dictionaries, Text and CSV FilesSo far, we have one collection data type, the list. In this module we take up two more: the tuple and the data dictionary. After that we introduce reading and writing text files and give some illustrative examples. Finally, we take up reading and writing Comma Separated Value (CSV) files. Videos: • Using tuples and data dictionaries • Reading and writing files • Running Python Programs (Windows) • Installing Environments on a Mac • Running Python Programs (Mac) • Writing scripts in Python • Reading and writing CSV files Materials for self-study: • Exercises3.py - The exercise/lecture file for this module • Python files needed for this module • Text and CSV files used during this module • FAQ/Errata: Change in Spyder; Running in a Command Prompt • If python does not run, read this file
- Week 4: Functional Values, Sorting, Formatting, Statistics, and a Menu Driven Database ProgramIn this lesson, we take up a variety of topics and give an example using much of what we've covered in the course. First, we show how functions can return values. Then we show how to build lists of various types and how to sort these lists. After that we use the statistic library to introduce basic descriptive statistics. Finally, we show how to use formatting in print statements. As a recap, we work through an application making use of what we've learned to build a menu-driven program that maintains a small database. Videos: • Long strings, random library, building and sorting lists • Descriptive statistics • Formatting print statements • Starting the database application • Displaying the records • Adding and deleting records • Editing records • Saving records to a CSV file • Loading the records from the CSV file • Running our database application as a stand-alone program Materials for self-study: • Exercises4.py -- the exercise/lecture file for this module Additional program and data files needed for this module
Assessment Elements
- Final test
- Oral controlThe format of the exam in module 2 can be remote, offline, or mixed, depending on the situation. The information is communicated to students no later than 10 days before the session.
Bibliography
Recommended Core Bibliography
- Álvaro Scrivano. (2019). Coding with Python. Minneapolis: Lerner Publications ™. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1947372
- Baka, B. (2017). Python Data Structures and Algorithms. Birmingham, U.K.: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1528144
- Hetland, M. L. (2017). Beginning Python : From Novice to Professional (Vol. Third edition). New York: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1174463
Recommended Additional Bibliography
- Bhasin, H. (2019). Python Basics : A Self-Teaching Introduction. Dulles, Virginia: Mercury Learning & Information. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1991381
- Bill Lubanovic. (2019). Introducing Python : Modern Computing in Simple Packages. [N.p.]: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=2291494
- Gries, P., Campbell, J., & Montojo, J. (2017). Practical Programming : An Introduction to Computer Science Using Python 3.6 (Vol. Third edition). [Place of publication not identified]: Pragmatic Bookshelf. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1716748
- Grus, J. (2019). Data Science From Scratch : First Principles with Python (Vol. Second edition). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=2102311