UPV
Study Abroad
 











Alumnos USAC
• Attendance
• Assessments
• Sexual Harassment Policy
• Students With Disabilities
• Academic Honesty Policy
• University Ombudsman
• Statement On Audio And Video Recording
• Syllabus Change Policy

Introduction to programming with Python

3 Credits | 100 Level | 38 Contact hours


REQUIRED TEXTBOOKS AND COURSE MATERIALS

Reference book: Learning Python, 5th Edition, Mark Lutz, O’Reilly.
Support book: Starting out with Python, 4th Edition, Tony Gaddis, Pearson.



DESCRIPTION

Today, we live in a digital world that is completely driven by chunks of code. Most industries heavily rely on software. The list of available programming languages is huge, and grows every year. One of these is Python, which has emerged as one of the most popular languages. Indeed, Python is the main coding
language for more than 80% of software developers. Popular applications, such as Google, Netflix, Reddit, Spotify, and YouTube, all use Python to some extent. The rapidly growing gaming industry also uses Python. For instance, popular games like Pirates of the Caribbean, Bridge Commander, and Battlefield 2 use Python programming for a wide range of functionalities and add-ons. Data Science, Machine Learning and Artificial Intelligence are some of the hottest subjects right now. Python is extensively used in these fields. And these are just some, amongst many others, of the applications where Python is used.

This course will introduce you to the Pythonic World. You will learn the fundamentals of computer programming using Python, and at the end of the course you will be able to build computer programs applicable to real-world. This course is a completely hands-on course. In it, you will learn programming the best way: just programming! The course will be vertebrated around a collection of programming challenges of increasing difficulty.

This course is designed for students with little or no programming knowledge.



OUTLINE

Unit 1. THE BASICS. Installing Python. Python shell. Interactive and script mode. Integrated development environment. Jupyter notebooks. Debugging.
Unit 2. INPUT, PROCESSING, AND OUTPUT. Python statements. Displaying outputs. Comments. Variables.
Assignments. Reading inputs. Performing calculations.
Unit 3. DATA TYPES AND OPERATIONS. Numeric types. Strings. Lists. Dictionaries. Tuples. Dynamic typing.
Unit 4. BOOLEAN LOGIC AND DECISION STRUCTURES. Logical operators. Boolean variables. if-else statements. Nested decision structures.
Unit 5. REPETITION STRUCTURES. Condition-controlled loops: While loops. Counter-controlled loops: For loops. Break, continue and pass statements. Input validation loops. Nested loops.
Unit 6. FUNCTIONS AND MODULES. Motivation. Defining and calling functions. Local and global variables. Arguments. Returning values. Anonymous functions: lambda. Modules. Import and from statements. Namespaces. Creating a module. Documentation.
Unit 7. FILES. File object. File input and output. Using loops to process files.
Unit 8. EXCEPTIONS. Why use exceptions? Try-except-else, Try-finally, Try-except-finally statements. Raise statement. Assert statement. Exception objects. Exception logging. Unit tests.
Unit 9. CLASSES AND OBJECT-ORIENTED PROGRAMMING. Procedural vs object-oriented programming.
Classes. Instances. Attributes. Methods. Inheritance. Constructor method.
Unit 10. ADVANCED TOPICS. Decorators. Comprehensions and generations. Introduction to Application. Programming Interfaces (APIs). Introduction to Graphical User Interfaces (GUIs).



STUDENT LEARNING/COURSE OUTCOMES

1. Use an integrated development environment (IDE) in interactive and script mode to test and write
code.
2. Understand the syntax of Python programs.
3. Write procedural and object-oriented programs in Python.
4. Work with common Python data types.
5. Use basic flow control.
6. Write and test functions and modules for code reuse.
7. Handle exceptions and errors.
8. Solve real-world problems using Python.



campus UPV de excelenciacampus UPV de excelencia
Universitat Politècnica de València © 2012 · Tel. (+34) 96 387 90 00 · informacion@upv.es
EMAS upv