Ejemplos prácticos de truncación
Escenarios de truncación de listas en el mundo real
Técnicas de procesamiento de datos
## Handling large datasets
raw_data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
## Truncate to first 5 elements
top_five = raw_data[:5]
print("Top 5 elements:", top_five)
## Truncate to last 3 elements
bottom_three = raw_data[-3:]
print("Bottom 3 elements:", bottom_three)
Patrones comunes de truncación
Escenario |
Método de truncación |
Caso de uso |
Paginación |
list[:page_size] |
Dividir datos en páginas |
Selección de los N primeros |
list[:n] |
Seleccionar a los mejores rendidores |
Recorte de la cola |
list[:-n] |
Eliminar los últimos n elementos |
Técnicas avanzadas de truncación
## Complex data filtering
students = [
{"name": "Alice", "score": 85},
{"name": "Bob", "score": 92},
{"name": "Charlie", "score": 78},
{"name": "David", "score": 95},
{"name": "Eve", "score": 88}
]
## Truncate to top performers
top_performers = sorted(students, key=lambda x: x['score'], reverse=True)[:3]
print("Top 3 Performers:")
for student in top_performers:
print(f"{student['name']}: {student['score']}")
Visualización del flujo de trabajo de truncación
graph TD
A[Original List] --> B{Truncation Condition}
B -->|First N Elements| C[Slice from Start]
B -->|Last N Elements| D[Slice from End]
B -->|Conditional| E[Filter/Map]
C --> F[Truncated List]
D --> F
E --> F
Truncación con rendimiento eficiente
## Memory-efficient truncation
def truncate_large_list(input_list, max_length):
"""
Efficiently truncate large lists
"""
return input_list[:max_length]
## Example usage
huge_list = list(range(1000000))
manageable_list = truncate_large_list(huge_list, 1000)
print(f"Truncated list length: {len(manageable_list)}")
Manejo de errores en la truncación
def safe_truncate(input_list, start=None, end=None):
try:
return input_list[start:end]
except (TypeError, IndexError) as e:
print(f"Truncation error: {e}")
return []
## Safe truncation examples
sample_list = [1, 2, 3, 4, 5]
print(safe_truncate(sample_list, 1, 4)) ## Normal slice
print(safe_truncate(sample_list, 10)) ## Out of range handling
LabEx recomienda dominar estas técnicas prácticas de truncación para mejorar tus habilidades de manipulación de datos en Python.