Python Projects & Free Books
Python Interview Projects & Free Courses Admin: @Coderfun
Показати більше📈 Аналітичний огляд Telegram-каналу Python Projects & Free Books
Канал Python Projects & Free Books (@pythonfreebootcamp) у мовному сегменті Англійська є активним учасником. На даний момент спільнота об'єднує 40 826 підписників, посідаючи 3 194 місце в категорії Технології та додатки та 9 562 місце у регіоні Індія.
📊 Показники аудиторії та динаміка
З моменту свого створення невідомо, проект продемонстрував стрімке зростання, зібравши аудиторію у 40 826 підписників.
За останніми даними від 25 серпня, 2026, канал демонструє стабільну активність. Хоча за останні 30 днів спостерігається зміна кількості учасників на -43, а за останні 24 години на -7, загальне охоплення залишається високим.
- Статус верифікації: Не верифікований
- Рівень залученості (ER): Середній показник залученості аудиторії становить 3.10%. Протягом перших 24 годин після публікації контент зазвичай збирає N/A% реакцій від загальної кількості підписників.
- Охоплення публікацій: В середньому кожен допис отримує 1 267 переглядів. Протягом першої доби публікація в середньому набирає 0 переглядів.
- Реакції та взаємодія: Аудиторія активно підтримує контент: середня кількість реакцій на один пост – 1.
- Тематичні інтереси: Контент зосереджений навколо ключових тем, таких як learning, analyst, framework, link:-, structure.
📝 Опис та контентна політика
Автор описує ресурс як майданчик для висловлення суб'єктивної думки:
“Python Interview Projects & Free Courses
Admin: @Coderfun”
Завдяки високій частоті оновлень (останні дані отримано 26 серпня, 2026), канал підтримує актуальність та високий рівень охоплення публікацій. Аналітика показує, що аудиторія активно взаємодіє з контентом, що робить його важливою точкою впливу в категорії Технології та додатки.
if obj == None, use if obj is None
In Python, when you write:
obj == None
you're not directly checking if obj is the value None. Instead, you're asking if the object is equal to None.
Yes, in many cases, the result will be the same as for the code:
obj is None
But the behavior of these two variants is different, and this difference is important.
When you use:
obj == None
Python calls the __eq__ method on the object. That is, the object itself decides what it means to be "equal to None". And this method can be overridden.
If obj is an instance of a class in which __eq__ is implemented so that when compared with None, it returns True (even if the object is not actually None), then obj == None may mistakenly give True.
Example:
class Weird:
def __eq__(self, other):
return True # Always asserts that it's equal
obj = Weird()
print(obj == None) # True
print(obj is None) # False
Here, it can be seen that obj == None returns True due to the custom behaeqf the __eq__ operator in the class.
Therefore, when using obj == None, the result is not always predictable.
On the other hand, when you write:
obj is None
you're using the is operator, which cannot be overridden. This means that the result will always be the same and predictable.
The is operator checks the identity of objects, that is, whether two references point to the same object. Since None is a singleton (the only instance), obj is None is the correct and most efficient way to perform such a check.
❤️ Therefore, it is always recommended, and this is best practice, to use obj is None instead of obj == None for predictability and efficiency.
👉 https://t.me/DataScienceQdef first_duplicate(lst):
seen = set()
for x in lst:
if x in seen:
return x
seen.add(x)
return None
print(first_duplicate([3, 1, 3, 4, 2])) # Output: 3
2️⃣ Q: Check whether a number is a palindrome.
def is_pal_num(n):
return str(n) == str(n)[::-1]
print(is_pal_num(121)) # True
print(is_pal_num(123)) # False
3️⃣ Q: Sort a dictionary by values.
def sort_by_value(d):
return dict(sorted(d.items(), key=lambda x: x[1]))
print(sort_by_value({'a': 3, 'b': 1, 'c': 2}))
Output: {'b': 1, 'c': 2, 'a': 3}
4️⃣ Q: Return all prime numbers in a given range.
def primes_upto(n):
primes = []
for num in range(2, n + 1):
for i in range(2, int(num**0.5) + 1):
if num % i == 0:
break
else:
primes.append(num)
return primes
print(primes_upto(10)) # [2, 3, 5, 7]
5️⃣ Q: Convert a list of numbers into a string.
def list_to_string(lst):
return "".join(map(str, lst))
print(list_to_string([1, 2, 3])) # Output: 123
💬 Double Tap ❤️ for Part-12import requests
# API endpoint
url = "https://api.example.com/data"
# Parameters including the API key for authentication
params = {
"api_key": "YOUR_API_KEY" # Replace with your actual API key
}
# Send GET request with parameters
response = requests.get(url, params=params)
# Convert JSON response to Python object
data = response.json()
# Print the data
print(data)
Next up ➡️ Importing Pickle files in pythonPDF), send it to GPT and receive a set of test questions with answer options and a key.
First, we load the text of the material:
# article_text — this is where we put the text of the article
with open("article.txt", "r", encoding="utf-8") as f:
article_text = f.read()
# for PDF, you can extract the text in advance with any library (PyPDF2, pdfplumber, etc.)
Next, we ask GPT to generate a test:
prompt = (
"You are an exam methodologist."
"Based on this text, create 15 test questions."
"Each question is in the format:\n"
"1) Question text\n"
"A. Option 1\n"
"B. Option 2\n"
"C. Option 3\n"
"D. Option 4\n"
"Correct answer: <letter>."
"Do not add explanations and comments, only questions, options, and correct answers."
)
response = client.chat.completions.create(
model="gpt-4o",
messages=[
{"role": "system", "content": prompt},
{"role": "user", "content": article_text}
])
print(response.choices[0].message.content.strip())
✅ Suitable for online courses, educational centers, and corporate training — you immediately get a ready-made bank of tests from any article.