O Level[M3-R5] Programming and Problem-Solving through Python Language
(i) Introduction to Programming
The basic Model of computation, algorithms, flowcharts, Programming Languages, compilation, testing & Debugging, and documentation.
(ii) Algorithms and Flowcharts to Solve Problems
Flow Chart Symbols, Basic algorithms/flowcharts for sequential processing, decision-based processing, and iterative processing. Some examples like Exchanging values of two variables, summation of a set of numbers, Decimal Base to Binary Base conversion, Reversing digits of an integer, GCD (Greatest Common Division) of two numbers, Testing whether a number is prime, factorial computation, Fibonacci sequence, Evaluate ‘sin x’ as the sum of a series, Reverse order of elements of an array, Find the largest number in an array, Print elements of the upper triangular matrix, etc.
(iii) Introduction to Python
Python Introduction, Technical Strength of Python, Introduction to Python Interpreter and program execution, Using Comments, Literals, Constants, Python’s Built-in Data types, Numbers (Integers, Floats, Complex Numbers, Real, Sets), Strings (Slicing, Indexing, Concatenation, other operations on Strings), Accepting input from Console, printing statements, Simple ‘Python’ programs.
(iv) Operators, Expressions, and Python Statements
Assignment statements, expressions, Arithmetic, Relational, Logical, Bitwise operators and their precedence, Conditional statements: if, if-else, if-elif-else; simple programs, Notion of iterative computation and control flow –range function, While Statement, For loop, break statement, Continue Statement, Pass statement, else, assert.
(v) Sequence Data Types
Lists, tuples, and dictionary, (Slicing, Indexing, Concatenation, and other operations on Sequence data type), concept of mutability, Examples to include finding the maximum, minimum, and mean; linear search on the list/tuple of numbers, and counting the frequency of elements in a list using a dictionary.
(vi) Functions
The top-down approach of problem-solving, Modular programming and functions, Function parameters, Local variables, the Return statement, DocStrings, global statement, Default argument values, keyword arguments, and varargs parameters.
Library function-input(), eval(),print(), String Functions: count(), find(), rfind(), capitalize(), title(), lower(), upper(), swapcase(), islower(), isupper(), istitle(),replace(), strip(), lstrip(), rstrip(), aplit(), partition(), join(), isspace(), isalpha(), isdigit(), isalnum(), startswith(), endswith(), encode(), decode(), String: Slicing, Membership, Pattern Matching, Numeric Functions: eval(), max(), min(), pow(), round(), int(), random(), ceil(), floor(), sqrt(), Date & Time Functions, Recursion
(vii) File Processing
Concept of Files, File opening in various modes and closing of a file, Reading from a file, Writing onto a file, File functions-open(), close(), read(), readline(),readlines(),write(), writelines(),tell(),seek(), Command Line arguments.
(viii) Scope and Modules
Scope of objects and Names, LEGB Rule Module Basics, Module Files as Namespaces, Import Model, Reloading Modules.
(ix) NumPy Basics
Introduction to NumPy,ndarray, datatypes, array attributes, array creation routines, Array From Existing Data, Array From Numerical Ranges, Indexing & Slicing.
Ruchi kumari –
Nice notes