Learn Python Coding
Learn Python through simple, practical examples and real coding ideas. Clear explanations, useful snippets, and hands-on learning for anyone starting or improving their programming skills. Admin: @HusseinSheikho || @Hussein_Sheikho
Mostrar más📈 Análisis del canal de Telegram Learn Python Coding
El canal Learn Python Coding (@pythonre) en el segmento lingüístico de Inglés es un actor destacado. Actualmente la comunidad reúne a 40 871 suscriptores, ocupando la posición 3 292 en la categoría Tecnologías y Aplicaciones y el puesto 9 285 en la región India.
📊 Métricas de audiencia y dinámica
Desde su creación el невідомо, el proyecto ha mostrado un crecimiento acelerado, reuniendo a 40 871 suscriptores.
Según los últimos datos del 28 octubre, 2026, el canal mantiene una actividad estable. En los últimos 30 días la variación de miembros fue de 351, y en las últimas 24 horas de -15, conservando un alto alcance.
- Estado de verificación: No verificado
- Tasa de interacción (ER): El promedio de interacción de la audiencia es 4.54%. Durante las primeras 24 horas tras publicar, el contenido suele obtener 1.43% de reacciones respecto al total de suscriptores.
- Alcance de las publicaciones: Cada publicación recibe en promedio 1 854 visualizaciones. En el primer día suele acumular 586 visualizaciones.
- Reacciones e interacción: La audiencia responde de forma activa: el promedio de reacciones por publicación es 3.
- Intereses temáticos: El contenido se centra en temas clave como math, harvard, oxford, supervision, waybienad.
📝 Descripción y política de contenido
El autor describe el recurso como un espacio para expresar opiniones subjetivas:
“Learn Python through simple, practical examples and real coding ideas. Clear explanations, useful snippets, and hands-on learning for anyone starting or improving their programming skills.
Admin: @HusseinSheikho || @Hussein_Sheikho”
Gracias a la alta frecuencia de actualizaciones (últimos datos recibidos el 29 octubre, 2026), el canal mantiene la vigencia y un amplio alcance. La analítica demuestra que la audiencia interactúa activamente con el contenido, lo que lo convierte en un punto de referencia dentro de la categoría Tecnologías y Aplicaciones.
for loop, the second uses the itertools module, and the third uses list comprehension.
⚙️ Using a for loop:
For this method, we use a nested for loop. The outer loop iterates over the inner lists, and the inner loop accesses the elements in the inner lists.
# In [19]:
list1 = [[1, 2, 3],[4, 5, 6]]
newlist = []
for list2 in list1:
for j in list2:
newlist.append(j)
print(newlist)
[1, 2, 3, 4, 5, 6]
⚙️ Using the itertools module:
The itertools.chain.from_iterable() function from the itertools module can be used to flatten a nested list. This method may not be suitable for deeply nested lists.
# In [20]:
import itertools
list1 = [[1, 2, 3],[4, 5, 6]]
flat_list = list(itertools.chain.from_iterable(list1))
print(flat_list)
[1, 2, 3, 4, 5, 6]
You can see that the nested loop has been flattened.
⚙️ Using list comprehension
If you don't want to import itertools or write a regular for loop, you can simply use list comprehension.
# In [21]:
list1 = [[1, 2, 3], [4, 5, 6]]
flat_list = [i for j in list1 for i in j]
print(flat_list)
[1, 2, 3, 4, 5, 6]
List comprehension is well suited for moderately nested lists. For deeply nested lists, it is not suitable, as the code becomes harder to read.
⚙️ Using a generator function
You can create a generator function that yields elements from the nested list, and then convert the generator into a list.
# In [22]:
def flatten_generator(nested_list):
for sublist in nested_list:
for item in sublist:
yield item
list1 = [[1, 2, 3], [4, 5, 6]]
flat_list = list(flatten_generator(list1))
flat_list
Out[22]: [1, 2, 3, 4, 5, 6]
The generator method is suitable for flattening large or deeply nested lists. This is because generators are memory-efficient.
👉 https://t.me/DataScience4reversed() in Python - what supports it and what doesn't
The function reversed() is built-in in Python, but it doesn't work with all data types
✓ Lists - it works
reversed([1, 2, 3]) returns an iterator
list(reversed([1, 2, 3])) → [3, 2, 1]
✓ Tuples - it also works
reversed((1, 2, 3)) can be easily iterated
✗ Sets - not supported
reversed({1, 2, 3}) → TypeError
Why? Sets don't have a fixed order, so they can't be "reversed"
If you need to reverse a set:
list(reversed(list({1, 2, 3})))
# ❌ Bad: O(n²)
users = ["alice", "bob", "carol", "dave"]
for u in users:
if u in users: # full list traversal every time
process(u)
# ✅ Good: O(n)
users = ["alice", "bob", "carol", "dave"]
users_set = set(users)
for u in users:
if u in users_set:
process(u)Counter class from the collections module. Counter() returns a dictionary with the number of times each element appears in the sequence. Let's say we want to find out how many times the name Peter appears in the following list. We can use Counter(). See below:
from collections import Counter
list1 = ['John', 'Kelly', 'Peter', 'Moses', 'Peter']
count_peter = Counter(list1).get("Peter")
print(f'The name "Peter" appears in the list '
f'{count_peter} times.')
Output:
The name "Peter" appears in the list 2 times.
Another way to do this is with a regular for loop. We create a count variable and increase it by 1 each time we find the name Peter in the sequence. This is a naive approach. See below:
list1 = ['John', 'Kelly', 'Peter', 'Moses', 'Peter']
# Create a count variable
count = 0
for name in list1:
if name == 'Peter':
count +=1
print(f'The name "Peter" appears in the list'
f' {count} times.')
Output:
The name "Peter" appears in the list 2 times.
Lists and other iterable data structures in Python have a built-in count() method, which allows us to count the number of occurrences of a specific element. We can use count() to count how many times Peter appears in the list.
list1 = ['John', 'Kelly', 'Peter', 'Moses', 'Peter']
print(f'The name "Peter" appears in the list '
f'{list1.count("Peter")} times.')
Output:
The name "Peter" appears in the list 2 times.
👉 https://t.me/DataScience420 to the variable x and 30 to the variable y, and then swap them: x becomes 30, and y becomes 20. This method is called tuple packing/unpacking.
x, y = 20, 30
x, y = y, x
print('x is: ', x)
print('y is: ', y)
x is 30
y is 20
You can also use the XOR (exclusive or) operator to swap variables. This is a three-step method. In the example below, we swap the values of x and y.
x = 20
y = 30
# step one
x ^= y
# step two
y ^= x
# step three
x ^= y
print(f'x is: {x}')
print(f'y is: {y}')
x is: 30
y is: 20
You can also use arithmetic operations (addition and subtraction) to swap variables without a temporary variable. However, this method is recommended for swapping numeric data types. Here's an example:
# Use arithmetic operations
x = 5
y = 10
x = x + y
y = x - y
x = x - y
print("After swapping:")
print("x =", x)
print("y =", y)
After swapping:
x = 10
y = 5
As a result of these arithmetic operations, the values of x and y have actually been swapped. After the swap, x contains the original value of y (10), and y contains the original value of x (5).
This method of swapping variables without a temporary variable is based on the fact that when you add or subtract the value of one variable from another, you can effectively swap their values without the need for additional storage.
👉 https://t.me/DataScience4