# Course Index

**Day 1 :**

**Python Installation**

**Python Introduction:**

&#x20;**Learning Objectives** - Understand what Python is and why it is so popular. Learn how to set up Python environment, flow control and write your first Python program.

&#x20;**Topics -**&#x20;

&#x20;**Python Overview :**

* &#x20;About Interpreted Languages, Advantages/Disadvantages of Python, pydoc.
* &#x20;Starting Python, Interpreter PATH, Using the Interpreter
* &#x20;Running a Python Script, Python Scripts on UNIX/Windows, Python Editors and IDEs.
* &#x20;Using Variables, Keywords, Built-in Functions, Strings, Different Literals, Math Operators and Expressions, Writing to the Screen, String Formatting, Command Line Parameters and Flow Control.

&#x20;**Day 2 & 3:**

&#x20;**Python Datatypes & Type Conversion:**

&#x20;**Numbers** : Python supports four numerical types > int (signed integers) ,long (long integers),float (floating point real values), complex ( complex numbers).

&#x20;**Strings :**

* &#x20;In Python everything is object & String are an object too.
* &#x20;b) Reading Values from String.
* &#x20;c) Updating values in a String
* &#x20;d) Delete elements from a String.
* &#x20;e) Python String Operations.

&#x20;**Python Lists :**

&#x20;a) List in Python is a mutable collection whose values can be modified after adding values in a list. We can add duplicate elements in a List.

&#x20;b) Reading Values from List.

&#x20;c) Updating values in a List

&#x20;d) Delete elements from a List.

&#x20;e) Python List Operations.

&#x20;**Python Tuples :**

&#x20;a) Tuples in Python is a immutable collection whose values can’t be modified once added.

&#x20;b) Reading Values from Tuple.

&#x20;c) Updating values in a Tuple

&#x20;d) Delete elements from a Tuple.

&#x20;e) Python Tuple Operations.

&#x20;**Dictionary in python :**

&#x20;a) Dictionary key is separated from its value by a colon (:)

&#x20;b) Reading Values from Dictionary.

&#x20;c) Updating values in a Dictionary

&#x20;d) Delete elements from a Dictionary.

&#x20;e) Python Dictionary Operations.

&#x20;f) Dictionary built-in functions & methods.

**Sets in Python:**

A Set is an unordered collection data type that is

* iterable
* mutable
* has no duplicate elements

**Type Conversion:**

* Converting to integer base 2
* Converting to float
* Converting Integer to hexadecimal string
* Converting Integer to octal string
* Converting string to tuple
* Converting string to set
* Converting string to list

**Day 4 :** **Operators**

1. Arithmetic Operators
2. Comparison Operators
3. Logical Operators
4. Assignment Operators
5. Binary Operators
6. Identity Operators
7. Membership Operators

**Day 5 :**&#x20;

**Conditional Statements:**

* **If**
* **if-else**
* **if-elif-else**

**Loops:**

* **For Loop**
* **While Loop**

**Day 6 : Practice of Day 3, Day 4 & Day 5**

**Day 7 : Functions -1**

1- Definition

2- Rules to define a function

3- Calling a Function

4- Pass by reference vs pass by value

5- Function Arguments

6- Examples

**Day 8: Functions -2**

1- Anonymous Functions

* Lambda keyword
* return statement
* map()
* filter()
* reduce()

**Scope of Variables - Global & Local Variables**

**Date & Time Functions in Python**

Python Date, Time & Date Time classes provides a number of functions to deal with dates, times & time interval.

&#x20;Date Time classes in Python are categorized into five main classes:

&#x20;a) Time : Time independent of the day( Hour, minute, second, microsecond)

&#x20;b) Datetime : Combination of time & date ( Month, day , hour, second, microsecond)

&#x20;c) Timedelta : a duration of time used for manipulating dates.

&#x20;d) Tzinfo : An abstract class for dealing with time zones.

**Day 9 : Practice of Day 7, Day 8**

**Day 10 :**

&#x20;**I/O Functions in Python**

* &#x20;Keyboard I/O Functions ( reading data from Keyboard)
* &#x20;Files R/W operations.
* &#x20;Python opening/closing of files (Excel, csv, etc).
* &#x20;Python File & Directory Related methods.

**Day 11, Day 12 :**

&#x20;**OOPS Concepts in Python:**

* &#x20;Python Classes & Objects Overview
* &#x20;OOPS terminology in Python
* &#x20;Creating Python Objects.
* &#x20;Python Built-In class attributes.
* &#x20;Garbage Collection in Python. (Destroying Python objects)
* &#x20;Python Inheritance.
* &#x20;Python Function Overloading and Overriding
* &#x20;Data Hiding concept in python
* &#x20;Data Binding concept in Python (Encapsulation)
* &#x20;Constructors in Python.
* &#x20;Declaring Enumerations
* &#x20;Python Class String values
* &#x20;Python Computed Attributes
* &#x20;Python Object Operations
* &#x20;Python Object Comparisons
* &#x20;Multithreading

&#x20;

&#x20;**Day 13 :**

&#x20;**Python Database Connectivity, Debugging & CRUD operations.**

* &#x20;Connecting Python with OLTP sources.
* &#x20;Python CRUD operations.
* &#x20;Calling DB Procedures & Functions.
* &#x20;Packages in Python

**Day 14 :**

&#x20;**Python - XML & JSON Data Processing**

* &#x20;XML data parsing using DOM parser
* &#x20;XML data parsing using SAX parser
* &#x20;JSON data parsing using JSON parser.

&#x20;**Python Integration with various Datasources**

* &#x20;RDBMS/OLTP Sources (Mysql + Oracle + PostgreSQL)
* &#x20;PDF & Excel
* &#x20;API Integration (SOAP/REST API Consumer)
* &#x20;XML & JSON sources
* &#x20;Flat files Integration (CSV,TSV,SequenceFiles and TextFile)

&#x20;**Day 15 :**

&#x20;**Python Advanced Datatypes :**

* &#x20;Python Deque Objects
* &#x20;Python orderedDict
* &#x20;Python defaultDict
* &#x20;Python FrozenSet
* &#x20;Python namedTuples
* &#x20;Python Sets & FrozenSets

**Python Optimizations(Comprehensions)**

* &#x20;Python List Comprehensions
* &#x20;Python Set Comprehensions
* &#x20;Python Dictionary Comprehensions
* &#x20;Python Set Comprehensions

**Day 16 : Python Advanced Topics**

1. **NumbPy**
2. **Pandas**
3. Implementing **Web Scrapping** in Python using **Beautiful Soup** (**bs4**)
4. **NLP Implementation** with Python using **NLTK.**

&#x20;a) What IS NLP

&#x20;b) Benefits of NLP

&#x20;c) Word Stemming

&#x20;d) Word Tokenizing, Stop Words

\
\
�


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://gyansetu-python.gitbook.io/python-programming/master.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
