Mostrando entradas con la etiqueta Capítulo 6. Mostrar todas las entradas
Mostrando entradas con la etiqueta Capítulo 6. Mostrar todas las entradas

lunes, 28 de enero de 2019

Videoreceta Python No. 7-1: Obtener el Tipo de Dato de una Variable

Videoreceta Python No. 6-6: Generar Funciones Especializadas

Videoreceta Python No. 6-5: Uso de Funciones Anónimas

Videoreceta Python No. 6-4: Implementar un Algoritmo Recursivo

Videoreceta Python No. 6-3: Usar Valores Predeterminados para los Parámetros de una Función

Videoreceta Python No. 6-2: Orden Arbitrario de los Parámetros de una Función

domingo, 5 de agosto de 2018

Receta Python 3 No. 6-13: Resumen y Estadísticas de Datos

1. Problema

Se requiere crear un resumen y estadísticas de un volumen de datos considerable.

2. Solución

Existe una librería muy poderosa para computar estadísitcas y resúmenes de datos: Pandas. Esta librería provee un sinnúmero de funciones para el tratamiento de datos de gran volumen (Beazly, Jones, 2013).

3. Código Python 3

Archivo Python resumenes-estadisticas-datos.py [enlace alternativo]:

Prueba de ejecución:


   Unnamed: 0  litter  rx  time  status
0           1       1   1   101       0
1           2       1   0    49       1
2           3       1   0   104       0
3           4       2   1   104       0
4           5       2   0   102       0
     Unnamed: 0  litter  rx  time  status
145         146      49   0    91       0
146         147      49   0   104       0
147         148      50   1   104       0
148         149      50   0   104       0
149         150      50   0    79       1
0     0
1     1
2     0
3     0
4     0
5     0
6     0
7     0
8     0
9     0
10    0
11    0
12    0
13    0
14    0
15    1
16    1
17    0
18    1
19    0
20    1
21    1
22    0
23    0
24    0
25    0
26    0
27    1
28    0
29    0
Name: status, dtype: int64
       Unnamed: 0      litter          rx        time      status
count  150.000000  150.000000  150.000000  150.000000  150.000000
mean    75.500000   25.500000    0.333333   89.426667    0.266667
std     43.445368   14.479214    0.472984   17.277190    0.443698
min      1.000000    1.000000    0.000000   34.000000    0.000000
25%     38.250000   13.000000    0.000000   78.250000    0.000000
50%     75.500000   25.500000    0.000000   94.500000    0.000000
75%    112.750000   38.000000    1.000000  104.000000    1.000000

max    150.000000   50.000000    1.000000  104.000000    1.000000

Archivo ratas.csv [enlace alternativo].

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O

sábado, 4 de agosto de 2018

Receta Python 3 No. 6-12: Leer Estructuras Binarias Anidadas de Tamaño Variable

1. Problema

Se requiere leer datos en formato binario que contiene registros anidados representados con estructuras de tamaño variable. Los datos pueden ir desde texto, pasando por imáganes, vídeo y figuras.

2. Solución

El módulo struct permite codificar y decodificar cualquier estructura de datos representada como datos binarios (Beazly, Jones, 2013).

3. Código Python 3

Archivo Python lectura-estructura-datos-anidadas.py [enlace alternativo]:

Prueba de ejecución:

[[(1.0, 2.5), (3.5, 4.0), (2.5, 1.5)], [(7.0, 1.2), (5.1, 3.0), (0.5, 7.5), (0.8, 9.0)], [(3.4, 6.3), (1.2, 0.5), (4.6, 9.2)]]

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O

viernes, 3 de agosto de 2018

Receta Python 3 No. 6-11: Leer y Escribir Arreglos Binarios

1. Problema

Se requiere leer y escribir arreglos binarios para diferentes estructuras de datos.

2. Solución

El módulo struct permite trabajar con datos binarios. Entre sus capacidades está la de permitir guardar tuplas en un archivo binario.

3. Código Python 3

Archivo Python leer-escribir-arreglos-binarios.py [enlace alternativo]:

Prueba de ejecución:


(2, 3.0, 5.0)
(7, 11.0, 13.0)
(17, 19.0, 23.0)

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O

miércoles, 1 de agosto de 2018

Receta Python 3 No. 6-10: Codificar y Decodificar en Base64

1. Problema

Codificar y decodifcar datos binarios en el sistema de codificación Base64.

2. Solución

El módulo integrado base64 provee las funciones b64encode() y b64decode() para llevar a cabo las operaciones requeridas (Beazly, Jones, 2013).

3. Código Python 3

Archivo Python codificar-decodificar-base64.py [enlace alternativo]:

Prueba de ejecución:


b'UHl0aG9u'
b'Python'

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O

martes, 31 de julio de 2018

Receta Python 3 No. 6-9: Decodificar y Codificar Dígitos Hexadecimales

1. Problema

Decodificar una cadena de caracteres representada con dígitos hexadecimales en una representación binaria, y codificar una cadena de bytes como un valor hexadecimal.

2. Solución

El módulo nativo binascii permite decodificar o codificar una cadena de dígitos hexadecimales a través de sus diferentes funciones: b2a_hex() y a2b_hex() (Beazly, Jones, 2013).

3. Código Python 3

Archivo Python decodificar-codificar-hexadecimal.py [enlace alternativo]:

Prueba de ejecución:


b'507974686f6e'
b'Python'

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O

lunes, 30 de julio de 2018

Receta Python 3 No. 6-8: Interactuar con una Base de Datos Relacional

1. Problema

Realizar operaciones básicas sobre una base de datos relacional.

2. Solución

El módulo sqlite3 provee mecanismos para el tratamiento de bases de datos relacionales basadas en archivos. Este módulo se basa en la implementación de SQLite (Beazly, Jones, 2013).

Python también ofrece soporte para motores de bases de datos relacionales basadas en servidor.

3. Código Python 3

Archivo Python operaciones-base-datos.py [enlace alternativo]:

Prueba de ejecución:


('Python', 3.7)
('Java', 11.0)
('C#', 7.0)
('PHP', 7.0)


('Python', 3.7)

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O

sábado, 28 de julio de 2018

Receta Python 3 No. 6-7: Parsear Documentos XML con Nombres de Espacio

1. Problema

Parsear un documento XML usando nombres de espacio.

2. Solución

Por medio de la función parse() se carga el documento XML y luego a partir de una clase Python personalizada se crea la funcionalidad para parsear un documento XML y extraer los nombres de espacio (Beazly, Jones, 2013).

3. Código Python 3

Archivo Python parsear-xml-namespaces.py [enlace alternativo]:

Prueba de ejecución:


<Element '{http://www.w3.org/1999/xhtml}html' at 0x0000021DCEAB3A98>

Documento Web

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O

viernes, 27 de julio de 2018

Receta Python 3 No. 6-6: Leer, Modificar y Escribir un Documento XML

1. Problema

Se requiere leer un documento XML para realizar modificaciones, y finalmente guardar los cambios bajo el mismo formato.

2. Solución

El módulo xml.etree.ElementTree permite a llevar a cabo las tareas requeridas. Se parte de la lectura del documento, se realizan las operaciones o manipulaciones necesarias y finalmente se guardan los cambios en un archivo del mismo formato (Beazly, Jones, 2013).

3. Código Python 3


Prueba de ejecución:

<Element 'stop' at 0x000002842F6595E8>

Para ejecutar este archivo se requiere el documento XML de prueba datos.xml [enlace alternativo]. Al final se producirá un archivo datos-nuevos.xml [enlace alternativo] con los cambios efectuados en el documento original de prueba.

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O

jueves, 26 de julio de 2018

Receta Python 3 No. 6-5: Transformar un Diccionario en un Documento XML

1. Problema

Crear un documento XML a partir de un diccionario.

2. Solución

A través de la Element módulo ElementTree es posible crear los elementos integrales de un documento XML (Beazly, Jones, 2013).

3. Código Python 3

Archivo Python diccionario-a-xml.py [enlace alternativo]:

Prueba de ejecución:


&lgt;Element 'programacion' at 0x00000260CE2195E8>
Python
3.6.4
Guido van Rossum

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O

miércoles, 25 de julio de 2018

Receta Python 3 No. 6-4: Lectura Efeciente de un Documento XML Grande

1. Problema

Leer y manipular un documento XML de tamaño de manera eficiente, es decir, usando la menor cantidad de memoria de trabajo posible.

2. Solución

Para resolver este problema de procesamiento de datos incrementales, se ha de recurrir al uso de iteradores y generadores.

La clase xml.etree.ElementTree cuenta con la función iterparse() para el recorrido eficiente de un documento XML (Beazly, Jones, 2013).

3. Código Python 3

Archivo Python recorrido-eficiente-xml.py [enlace alternativo]:

Prueba de ejecución:


Open
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Completed
Completed
Completed
Completed
Completed
Open
Completed
Completed
Completed
Completed
Completed
Completed
Open
Completed
Completed
Open
Open
Completed
Completed
Open
Open
Open
Open
Completed
Open
Completed
Completed
Completed
Completed
Open
Completed
Open
Completed
Completed
Completed
Open
Completed
Completed
Open
Completed
Open
Open
Open
Open
Open
Open
Open
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Completed
Open
Completed
Completed
Completed
Completed
Completed
Completed
Completed

Completed

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O

martes, 24 de julio de 2018

Receta Python 3 No. 6-3: Manipular Datos en XML

1. Problema

Extraer y manipular datos desde un documento en formato XML.

2. Solución

El módulo xml cuenta con varios elementos para la manipulación de un documento XML. En particular, la clase ElementTree permite obtener la representación estructural del documento para el recorrido de los elementos de la estructura arbórea (Beazly, Jones, 2013).

3. Código Python 3

Archivo Python manipular-xml.py [enlace alternativo]:

Prueba de ejecución:


Stack Abuse: Cross Validation and Grid Search for Model Selection in Python
Tue, 24 Jul 2018 13:38:00 +0000
http://stackabuse.com/cross-validation-and-grid-search-for-model-selection-in-python/
EuroPython: EuroPython 2018: Get to know other attendees
Tue, 24 Jul 2018 10:37:36 +0000
https://blog.europython.eu/post/176226172432
Mike Driscoll: Understanding Tracebacks in Python
Tue, 24 Jul 2018 05:05:47 +0000
http://www.blog.pythonlibrary.org/2018/07/24/understanding-tracebacks-in-python/
Doing Math with Python: Doing Math with Python in Linux Geek Humble Bundle
Tue, 24 Jul 2018 03:20:00 +0000
http://doingmathwithpython.github.io/humble-bundle-linux-geek.html
Bhishan Bhandari: Python Operators
Mon, 23 Jul 2018 19:32:18 +0000
http://feedproxy.google.com/~r/TheTaraNights/~3/wD-sSXbFmzw/
PyCharm: PyCharm 2018.2 RC 2
Mon, 23 Jul 2018 16:32:55 +0000
http://feedproxy.google.com/~r/Pycharm/~3/opEoXs7_Vzg/
Real Python: Fast, Flexible, Easy and Intuitive: How to Speed Up Your Pandas Projects
Mon, 23 Jul 2018 14:00:00 +0000
https://realpython.com/fast-flexible-pandas/
Sylvain Hellegouarch: How Python and Guido got me my first job and many afterwards
Mon, 23 Jul 2018 13:04:05 +0000
http://www.defuze.org/archives/496-how-python-and-guido-got-me-my-first-job-and-many-afterwards.html
Dataquest: Top 20 Python AI and Machine Learning Open Source Projects
Mon, 23 Jul 2018 12:00:00 +0000
https://www.dataquest.io/blog/top-20-python-ai-and-machine-learning-open-source-projects/
Bhishan Bhandari: File Handling in Python
Mon, 23 Jul 2018 09:36:12 +0000
http://feedproxy.google.com/~r/TheTaraNights/~3/4I-uvlssowQ/
Mike Driscoll: PyDev of the Week: Christopher Neugebauer
Mon, 23 Jul 2018 05:05:55 +0000
http://www.blog.pythonlibrary.org/2018/07/23/pydev-of-the-week-christopher-neugebauer/
Matthew Rocklin: Pickle isn't slow, it's a protocol
Mon, 23 Jul 2018 00:00:00 +0000
https://matthewrocklin.com/blog//work/2018/07/23/protocols-pickle
Philip Semanchuk: A Python 2 to 3 Migration Guide
Sun, 22 Jul 2018 16:52:34 +0000
http://blog.pyspoken.com/2018/02/13/python-2-to-3-migration-guide/
Justin Mayer: Python Development Environment on macOS High Sierra
Sun, 22 Jul 2018 06:00:00 +0000
https://hackercodex.com/guide/python-development-environment-on-mac-osx/
Weekly Python StackOverflow Report: (cxxxv) stackoverflow python report
Sat, 21 Jul 2018 21:21:00 +0000
http://python-weekly.blogspot.com/2018/07/cxxxv-stackoverflow-python-report.html
EuroPython Society: List of EPS Board Candidates for 2018/2019
Sat, 21 Jul 2018 20:58:32 +0000
https://www.europython-society.org/post/176134445630
Bhishan Bhandari: Magic Methods in Python – Dunder Methods
Sat, 21 Jul 2018 19:12:02 +0000
http://feedproxy.google.com/~r/TheTaraNights/~3/7bEQNOpwyRw/
Mike Driscoll: Python 101: Episode #16 – The os Module
Sat, 21 Jul 2018 12:21:31 +0000
http://www.blog.pythonlibrary.org/2018/07/21/python-101-episode-16-the-os-module/
Test and Code: 44: Mentoring - Nina Zakharenko
Sat, 21 Jul 2018 07:15:00 +0000
http://testandcode.com/44
NumFOCUS: NumFOCUS to Hold 2018 Elections for Board of Directors
Fri, 20 Jul 2018 20:54:47 +0000
https://www.numfocus.org/blog/numfocus-to-hold-2018-elections-for-board-of-directors
Bhishan Bhandari: Debugging with breakpoint in Python3.7
Fri, 20 Jul 2018 18:42:42 +0000
http://feedproxy.google.com/~r/TheTaraNights/~3/0NhDXaCirqI/
PyCharm: PyCharm 2018.2 Release Candidate
Fri, 20 Jul 2018 14:13:18 +0000
http://feedproxy.google.com/~r/Pycharm/~3/JCMTX6qp5Zg/
Made With Mu: Mu 1.0.0!
Fri, 20 Jul 2018 14:00:00 +0000
https://madewith.mu/mu/releases/2018/07/20/mu-1.html
Talk Python to Me: #170 Guido van Rossum steps down
Fri, 20 Jul 2018 08:00:00 +0000
https://talkpython.fm/episodes/show/170/guido-van-rossum-steps-down
The No Title® Tech Blog: [Late] Book review – Python Tricks: The Book, by Dan Bader
Fri, 20 Jul 2018 08:00:00 +0000
https://no-title.victordomingos.com/articles/2018/book_review_python_tricks

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O

lunes, 23 de julio de 2018

Receta Python 3 No. 6-2: Leer y Escribir Datos en Formato JSON

1. Problema

Se requiere leer y escribir datos codificados en el formato JSON.

2. Solución

Python cuenta con un módulo especializado para el tratamiento de archivos en formato JSON (JavaScript Object Notation): json (Beazly, Jones, 2013).

3. Código Python 3

Archivo Python escribir-leer-json.py [enlace alternativo]:

Prueba de ejecución:

{"lenguaje": "Python", "version": "3.6.4", "creator": "Guido van Rossum"} <class 'str'>

{'lenguaje': 'Python', 'version': '3.6.4', 'creator': 'Guido van Rossum'} <class 'dict'>

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O

domingo, 22 de julio de 2018

Receta Python 3 No. 6-1: Leer y Escribir Datos en Formato CSV

1. Problema

Leer y escribir datos en formato CSV (Comma Separated Values).

2. Solución

Por medio de la librería csv es posible leer y escribir datos codificados en CSV (Beazly, Jones, 2013).

3. Código Python 3

Archivo Python manipular-csv.py [enlace alternativo]:
Prueba de ejecución:

['ID', 'Documento', 'Nombre', 'Ingreso', 'Telefono', 'Salario']
['DEA4CB18-8100-8773-B718-186EB2946A8A', '1630060891599', 'Maxwell Coleman', 'March 16th, 2018', '1-439-528-9645', '$9,961']
['BBE1267E-851B-5047-EED9-F86518527C2B', '1620020685899', 'Abbot Riley', 'October 21st, 2017', '1-469-920-1189', '$7,386']
['FEAE607A-0464-5F68-2E8E-068D131C9BD1', '1643061713099', 'Callum Hubbard', 'November 9th, 2017', '1-780-178-6105', '$6,843']
['1DC0E0F2-9387-665C-D99D-D4C339A683EA', '1651081664999', 'Bert Pittman', 'October 24th, 2017', '1-973-992-1822', '$8,308']
...
['A438E001-4B49-A9EE-19E7-2304DBF84021', '1647061256599', 'Steel Nieves', 'March 10th, 2018', '1-777-733-1221', '$7,863']
['23760DE7-A5BB-04B3-1305-44B69BE2398D', '1655111551899', 'Ishmael Stanton', 'April 30th, 2018', '1-343-849-0897', '$8,702']

['58EAE331-73A8-89BE-46EF-D5752ECE6E4F', '1640101982699', 'Hakeem Oneal', 'December 21st, 2017', '1-871-724-7148', '$5,979']

El contenido proviene de la lectura del archivo datos.csv [enlace alternativo].

4. Literatura & Enlaces

Beazly D, Jones B. K. (2013). Python Cookbook, Third Edition. United States: O'Reilly Media.

O