CS 110X Programming Skills

These skills are fundamental to solving real problems in any programming language. All lectures, homeworks, quizzes and exams are designed to assess your knowledge of these key skills and the give you the opportunity to demonstrate you have mastered these concepts.

Python Programming Syntax

PS-1.                     Assign value to variable

PS-2.                     Know that in Python the type of the value determines the type of the variable

PS-3.                     Know how to insert comments into code fragments and modules

PS-4.                     Understand syntax errors

PS-5.                     Understand concept of NameError

PS-6.                     Understand concept of TypeError

PS-7.                     Understand concept of IndentationError

PS-8.                     Understand context in which variables are defined

PS-9.                     Understand how indentation identifies body of statements

PS-10.                  Understand nested indentation

PS-11.                 Understand operator precedence and use of parentheses for clarity

Python Functions

PF-1.                     Know how to define a function

PF-2.                     Know how to define a function with parameters

PF-3.                     Know how to use return statement within a function

PF-4.                     Understand concept of AttributeError

PF-5.                     Know how (and why) to compose functions f(g(x))

PF-6.                     Know how (and why) to chain functions f(x).g(y)

PF-7.                     Know how to document a function (""")

Python Modules

PM-1.                  Understand how to define a function within a module

PM-2.                  Understand how to import a module

PM-3.                  Understand how to define a variable within a module

PM-4.                  Know how to invoke functions defined in another module

PM-5.                  Know about math module

PM-6.                  Know about sys module

PM-7.                  Know about pylab module

PM-8.                  Know how to re-import changed module by restarting Python terminal

PM-9.                  Know about numpy module

PM-10.               Know how to detect when you haven’t imported necessary module

Python Execution

PE-1.                     Know how to execute a python program (from within IDLE)

PE-2.                     Know how to execute a python program (from command prompt or windows desktop)

PE-3.                     Know how to interrupt a running python program

PE-4.                     Be able to use debugger to single step through a Python computation

Control Structures

CS-1.                     Know if statement

CS-2.                     Know else statement

CS-3.                     Know elif statement

CS-4.                     Know how to nest if statements

CS-5.                     Know how to use range in definite for loop

CS-6.                     Know how to use while as indefinite loop

CS-7.                     Know how to use break statement within loop

CS-8.                     Know how to use continue statement within loop

CS-9.                     Write definite for loop

CS-10.                 Understand nesting of for and while loops

CS-11.                 Understand logical and, or, not operators

CS-12.                 Understand comparative operators {<, <=, >, >=, ==, <>, !=}

String Manipulation

SM-1.                  Know how to convert string into integers and floats

SM-2.                  Know how to convert floats and integers into string

SM-3.                  Know how to concatenate string literals

SM-4.                  Know how to read string input from keyboard

SM-5.                  Know how to process XML formatted data

SM-6.                  Know how to search through a string to find delimited tokens and regions

SM-7.                  Know how to use ord(char) to determine ASCII code for a character

SM-8.                  Know how to use chr(int) to generate character from a given ASCII code

SM-9.                  Know how to slice a string substring

Input Output

IO-1.                     Know how to print information to the console window

IO-2.                     Know how to read raw input from console as string

IO-3.                     Know how to write data to a file

IO-4.                     Know how to read in text data containing strings of text

IO-5.                     Know how to read in CSV formatted data

IO-6.                     Understand why opened files need to be closed

IO-7.                     Know how to append data to a file

IO-8.                     Know how to use eval to convert arbitrary string into python data type.

Data Types                                       

DT-1.                    Know basic data types of int, bool, char, float

DT-2.                    Know basic mathematical operators {-, +, *, /, **}

DT-3.                    Know how integer division truncates values

DT-4.                    Generate random integer

DT-5.                    Know how to delete an element from a list

DT-6.                    Know how to insert an element into a list

DT-7.                    Know the difference between a tuple and a list

DT-8.                    Generate random floating point number

DT-9.                    Know how to access and modify individual elements of a list

Debugging Skills                             

DG-1.                   Identify an arithmetic defect

DG-2.                   Identify logic defect

DG-3.                   Identify syntax defect

DG-4.                   Demonstrate logical reasoning from observed error back to failure back to code defect

DG-5.                   Demonstrate by-hand execution of small code fragments

 

Last Updated: $Date: 2013/02/01 03:35:57 $