Python Basics and Advanced
I. Python Basics
Chapter 1: Getting started with Python programming
1.1 Introduction to Python
1.1.1 Python features
1.1.2 Scope of python
1.1.3 Python products
1.1.4 Python in today's context
1.2 Python Download, Installation and Environment Setup
1.3 First python program execution "Hello World"
1.4 The world of programming
1.5 Python programming syntax
Chapter 2: Variables, keywords and Operators
2.1 Variables
2.1.1 Memory mapping of variables
2.1.2 Application memory
2.1.3 Variable nomenclature
2.1.3 Properties and scope of variables
2.2 Keywords in Python
2.3 Operators
2.3.1 Arithmetic operators
2.3.2 Operator precedance
2.3.3 Logical operators
2.3.4 Membership Operators
2.4 Basics I/O and Type casting
2.5 __builtins__ functions and getting help
Chapter 3: Control flow statements
3.1 Flow of program control
3.2 Decision making statements: if-elif-else
3.3 for loop
3.3.1 Making of 'for' loop
3.3.2 Repetition using for loop: range() function
3.3.3 Iteration using for loop
3.4 while loop
3.4.1 Making of 'for' loop
3.4.2 Infinite loop
3.5 Loop control keywords: break, continue, pass
Chapter 4: Numbers and Functions
4.1 Introduction to functions
4.1.1 Function definition and return
4.1.2 Function call and reuse
4.1.3 Function parameters
4.2 Function recipe and docstring
4.3 Programming with functions
4.4 Namespaces and scope of variable
4.5 Numbers - int, float, long, complex
Chapter 5: Strings
5.1 Introduction to Python 'string' data type
5.2 Properties of a string
5.3 String built-in functions
5.4 Programming with strings
5.5 String formatting
Chapter 6: Lists
6.1 Introduction to Python 'string' data type
6.2 Properties of a list
6.3 List built-in functions
6.4 Programming with lists
6.5 List comprehension
Chapter 7: Tuples, Dictionary and Sets
7.1 Tuples as Read only lists
7.2 Moving from list to dictionary
7.3 Dictionary built-in functions
7.4 Sets and sets properties
7.5 Set built-in functions
Chapter 8: Practice, Test & Revision
II. Advanced Python
Chapter 9: More of Python functions
9.1 Recursive functions
9.2 *args, **kwargs, argv
9.3 Modules and Packages
9.4 Iterators and Generators
9.5 Function decorators
Chapter 10: Object oriented programming with Python
10.1 OOPs concepts: Classes and objects
10.2 Making of a class and module namespace
10.3 Static and instance variables
10.4 Deep understanding of self and __init__()
10.5 Inheritance and Overriding
Chapter 11: Object oriented programming continued
11.1 Overloading functions
11.2 Operator overloading
11.3 Encapsulation: Hiding attributes
11.4 Understanding threads
11.5 Multithreading
Chapter 12: Exception Handling in Python
12.1 Understanding exceptions
12.2 try, except, else and finally
12.3 raising exceptions with: raise, assert
12.4 Creating your own exception classes
12.5 Logging and Debugging
Chapter 13: File handing - Part 1
13.1 Working with files
13.2 File objects and Modes of file operations
13.2 Reading, writing and use of 'with' keyword
13.3 read(), readline(), readlines(), seek(), tell() methods
13.4 Handling comma separated value files
13.5 CSV reading and writing with DictWriter
Chapter 14: File Handling - Part 2
14.1 Working with PDFs
14.2 JSON parsing
14.3 XML parsing with DOM and ElementTree
14.4 File compression - zipping and unzipping
14.5 Pickling
Chapter 15: Regular expression
15.1 Pattern matching
15.2 Meta characters for making patterns
15.3 re flags
15.4 Project 1: Pattern matching over files
15.5 Project 2: Handling error log and plotting error graphs
Chapter 16: Database connectivity and Python webpages
16.1 Working with MySQL database
16.2 Working with Sqlite3 database
16.3 Creating webpages with Python files & CGI
16.4 Web scrapping with urllib and Beautiful soup
16.5 Project 3: Web scrapping automation
Chapter 17: Socket programming
17.1 Introduction to sockets
17.2 Understanding the client-server architecture
17.4 Implementation of multithreading with sockets
17.4 Advanced GUI
17.5 Project 4: Chat application
Chapter 18: Email sending Automation
18.1 Understanding SMTP
18.2 Sending email with sendmail() function
18.3 Sending email using Gmail
18.4 Email sending with attachment and MIME
18.5 Project 5: Mass emailer