Python_Notes_Web_Backend_Developer
Python_Notes_Web_Backend_Developer
1. Python Basics
Operators:
- Arithmetic: +, -, *, /, //, %, **
- Comparison: ==, !=, <, >, <=, >=
- Logical: and, or, not
- Membership: in, not in
Control Structures:
if x > 10:
pass
elif x == 10:
pass
else:
pass
for i in range(5):
print(i)
while condition:
break
2. Data Structures
List:
arr = [1, 2, 3]
arr.append(4)
arr[0]
Tuple:
t = (1, 2, 3)
Dictionary:
d = {'name': 'Abhinav', 'age': 25}
d['name']
d.get('email', 'not found')
Set:
s = set([1, 2, 2, 3]) # {1, 2, 3}
3. Functions
Python Notes for Web/Backend Developer Interviews
def greet(name="User"):
return f"Hello, {name}"
Lambda:
square = lambda x: x * x
- *args, **kwargs
- Scope: local, global
- First-class functions, closures
4. Object-Oriented Programming
class Person:
def __init__(self, name):
self.name = name
def greet(self):
return f"Hi, I'm {self.name}"
5. Advanced Python
Decorators:
def decorator(func):
def wrapper():
print("Before")
func()
print("After")
return wrapper
Generators:
def countdown(n):
while n > 0:
yield n
n -= 1
List Comprehensions:
squares = [x*x for x in range(10)]
Context Managers:
with open('file.txt') as f:
data = f.read()
Python Notes for Web/Backend Developer Interviews
Exception Handling:
try:
x=1/0
except ZeroDivisionError as e:
print("Error:", e)
finally:
print("Always runs")
Virtual Environment:
python -m venv env
source env/bin/activate
Django Basics:
- models.py: ORM
- views.py: logic handlers
- urls.py: routing
- settings.py: configurations
Django ORM:
User.objects.create(name="Abhinav")
User.objects.all()
User.objects.filter(name="Abhinav")
user = User.objects.get(id=1)
user.name = "New"
user.save()
user.delete()
Migrations:
python manage.py makemigrations
python manage.py migrate
7. Built-in Modules
- os, sys
- datetime
- collections: Counter, defaultdict
- itertools
- functools: reduce, lru_cache
Python Notes for Web/Backend Developer Interviews
8. Testing
Unit tests:
import unittest
class TestExample(unittest.TestCase):
def test_sum(self):
self.assertEqual(sum([1, 2]), 3)
9. Interview Topics
- Recursion
- Sorting & Searching
- Linked Lists, Trees (logic level)
- String manipulation
- SQL-like ORM queries
- Django REST API design