Course Description
Introduction to algorithmic problem solving using the Python programming language. Basic techniques of program development and supportive software tools. Programming projects.
Athena Title
Intro to Python Programming
Grading System
A - F (Traditional)
Course Objectives
This course presents basic programming topics in the Python programming language. The term “develop” should be interpreted as following the software development life cycle (SDLC), including reading, testing, executing, and basic debugging. At the end of the semester, all students will be able to: 1. Develop and implement algorithms that use basic programming concepts like expressions, variables, operators, input, and output. 2. Develop and implement algorithms that use Boolean expressions, control flow statements, and functions from the standard library to intelligently respond to different conditions. 3. Organize code into more manageable chunks by developing programs that define and use functions; and develop programs that handle potential errors. 4. Develop and implement maintainable programs that organize and manipulate data using Python data types like lists and dictionaries. 5. Develop and implement algorithms that manipulate strings to produce desired program output. 6. Develop and implement algorithms that combine a majority of the other learning outcomes to produce a solution to a set of problems.
Topical Outline
1. Python Basics (Knowledge level: Usage) a) Construct expressions involving variables and operators. b) Assign user input to variables. c) Display evaluated expressions on the screen. d) Use the Python interactive shell and development environments such as IDLE and Jupyter to write code. 2.Control Flow and Algorithms (Knowledge level: Usage) a) Construct Boolean expressions involving variables, Boolean operators, and comparison operators. b) Use if, elif, and else statements to control the flow of program execution. c) Use while, break, and continue statements to control the flow of program execution. d) Use for statements to control the flow of program execution. e) Import and use functions from the Python standard library. 3. Functions and Algorithms (Knowledge level: Usage) a) Construct basic functions using def statements and value-returning functions using def and return statements. b) Establish the scope of a variable as either local or global. c) Use try and except statements to handle lines of code that could potentially have an error. d) Use the open() function and methods like read() and close() to interact with files. 4. Lists (Knowledge level: Usage) a) Construct expressions involving list expressions. b) Use index values and slices to get or change values in a list. c) Use del statements to remove values from a list. d) Use for statements to traverse a list. e) Construct Boolean expressions involving lists using the in and not in operators. f) Call methods on lists, including index(), append(), insert(), remove(), and sort(). g) Modify a single list using multiple variables containing the same list reference value; pass list references into functions. h) Use the copy module’s copy() and deepcopy() functions to make shallow and deep copies of a list. 5. Dictionaries (Knowledge level: Usage) a) Construct expressions involving dictionary expressions. b) Use keys to get or change values in a dictionary. c) Call methods on dictionaries, including keys(), values(), items(), get(), and setdefault(). d) Construct Boolean expressions involving dictionaries. e) Use the pprint module’s pprint function to pretty print a dictionary. f) Use a dictionary to model real-world objects. 6. String Manipulation (Knowledge level: Usage) a) Construct simple string literals. b) Construct string literals involving escape characters. c) Construct Boolean expressions involving strings. d) Call methods on strings.
General Education Core
CORE III: Quantitative ReasoningSyllabus