COURSE OBJECTIVES
Cheat Sheets
http://j.mp/pythonCrashCS - main page for all cheatsheets
http://bit.ly/beginnerCS - beginner Python cheatsheet (variables, strings, etc)
http://bit.ly/conditionalCS - cheat sheet for conditionals (if and while statements)
http://bit.ly/functionCS - cheat sheet for functions (functions)
http://bit.ly/testingCS - cheatsheet for unit testing (unit testing)
List of programs
Concept | Sequence | Objective |
---|---|---|
Learn Python in 10 minutes | lab 0.0 | Blockly Challenge and Turtle Graphics, Read http://bit.ly/python10 |
Waterloo, CodingBat | lab 0.1 | Problem sets |
7 constructs, 140 CloudCoder exercises, Python workshop | lab 0.2 | Swap two numbers (variables), test for Leap Year (conditional), cycle through |
Algorithmic, Tuples, Modulo Arithmetic, Global Scope (vs) Local Scope, Indefinite looping ( | lab 1 | Compute the GCD of two numbers |
Algorithmic - same as above | lab 2 | Find the square root of a number (Newton’s method) |
Algorithmic | lab 3 | Exponentiation (power of a number) |
Algorithmic, Searching, Subscripting | lab 4 | Linear search and Binary search |
Algorithmic | lab 5 | First n prime numbers |
Lists | lab 6 | Find the maximum of a list of numbers |
Lists, Dictionaries | lab 7 | Removing all the duplicate elements in a list |
Looping through Lists, Sorting | lab 8 | Selection sort, Insertion sort |
Sorting (divide-and-conquer) | lab 9 | Merge sort, Quick sort |
Mutable data - List of Lists | lab 10 | Multiply matrices |
Mutable data - Dictionary, main() function, sys module, getopt function, Basic error handling | lab 11 | Programs that take command line arguments (word count, aka Unix command |
Dictionary, File Handling, Exceptions, Formatted Writing | lab 12 | Find the most frequent words in a text read from a file |
Advanced | Lab Integration | Solve the CloudCoder problem at http://cloudcoder.kgkite.ac.in/cloudcoder/#exercise?c=7,p=1229. Maximum points for the most elegant solution, aka one that is both efficient and one that is also easy to understand. |
Advanced | Lab Integration2 | Read personal GPS data from file and plot on a map and find the distance from home to KITE |
Platform needed
Python 3 interpreter for Windows/Linux
Total: 60 Periods
COURSE Outcomes
Upon completion of the course, students will be able to
Write, test, and debug simple Python programs.
Implement Python programs with conditionals and loops.
Develop Python programs step-wise by defining functions and calling them.
Use Python lists, tuples, dictionaries for representing compound data.
Read and write data from/to files in Python.
Bonus Lab GTG
For Inspiration review - https://www.python.org/about/success/
Genius Project - choose an open source project of your choice from
github
. If you are mechanical engineer, choose a project that is related to your discipline. Make a serious attempt to understand 100% of the logic of the code.Make changes to the code to improve the efficiency or effectiveness or create meaningful extensions.
Pre-register with your faculty to indicate that you want to complete this project with mentoring help
If you win the Python Genius Project Competition which will be held in the week of Sept 6, 2017, you will be awarded a prize for the best
GTG Project
, worth upto Rs 10,000
Think up a creative use of a Python script that you would like to use on your mobile. Create a personal Mobile App using Python to implement it - https://www.quora.com/Can-I-make-an-Android-app-with-Python
Last updated