<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[Comunidad Gambas-es - Python]]></title>
		<link>https://gambas-es.org/</link>
		<description><![CDATA[Comunidad Gambas-es - https://gambas-es.org]]></description>
		<pubDate>Mon, 25 May 2026 00:50:43 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Gmao-Factory: Aplicación realizada completamente con IA gemini-canvas con prompt]]></title>
			<link>https://gambas-es.org/thread-2007.html</link>
			<pubDate>Sat, 24 Jan 2026 20:28:52 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=21">jsbsan</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-2007.html</guid>
			<description><![CDATA[Feliz año nuevo 2026!<br />
<br />
Buenas chicos, hace tiempo que no me pasaba por el foro y escribía en él. <img src="https://gambas-es.org/images/smilies/blush.png" alt="Blush" title="Blush" class="smilie smilie_12" /><br />
Durante estos años, casi no he programado con gambas, pero si con python y VBA de excel, bueno <img src="https://gambas-es.org/images/smilies/rolleyes.png" alt="Rolleyes" title="Rolleyes" class="smilie smilie_6" /> ... realmente he estado usando la IA de gemini para ir haciendo mis pequeñas herramientas del día a día.<br />
<br />
Os presento  mi último proyecto, hecho durante estas vacaciones de navidad, y en un tiempo record,  sin prácticamente escribir ni una sola línea de código (en python ), eso si, através de gemini-canvas (versión profesional) y todo usando prompt (muchos), para crear el programa desde cero e ir ampliándolo. <br />
Fue un proceso muy fue iterativo: <br />
- escribir un prompt con lo que quería hacer o añadir.<br />
- ejecutar <br />
- apuntar los errores <br />
- prompt describiendo el error a gemini (he usado el editor visual studio code)<br />
- hacer las correcciones que decía gemini (normalmente generaba el archivo ya corregido)<br />
- volver a ejecutar.<br />
<br />
He documentado casi el 100% de los prompts que escribía ( <a href="https://github.com/jsbsan/GMAO-FACTORY/tree/main/Prompt" target="_blank" rel="noopener" class="mycode_url">https://github.com/jsbsan/GMAO-FACTORY/tree/main/Prompt</a> ). Las respuestas que me daba la IA, no las he apuntado. <img src="https://gambas-es.org/images/smilies/angel.png" alt="Angel" title="Angel" class="smilie smilie_10" />  .<br />
Cuando se quedaba "atascada" la IA, abría una nueva conversación y subía de nuevo los archivos. Inicialmente el proyecto era un único archivo, pero luego lo tuvo que dividirlo para facilitar los cambios y que no se "colgara".<br />
<br />
Gmao-factoy:<br />
Es un sistema de gestión de mantenimiento, para llevar el mantenimiento de equipos/maquinaria/edificios.<br />
La idea era tener una aplicación que trabajar "offline" (sin internet) para aquellos sitios donde el internet no llega o están aislados, y necesitan llevar el registro de inventario de equipo, mantenimiento preventivo, ordenes de trabajo, y correctivos/incidencias realizados.<br />
<br />
En github lo podeis ver en:<br />
<a href="https://github.com/jsbsan/GMAO-FACTORY" target="_blank" rel="noopener" class="mycode_url">https://github.com/jsbsan/GMAO-FACTORY</a><br />
<br />
Código fuente: <a href="https://github.com/jsbsan/GMAO-FACTORY/tree/main/src" target="_blank" rel="noopener" class="mycode_url">https://github.com/jsbsan/GMAO-FACTORY/tree/main/src</a><br />
Prompts para generarlo: <a href="https://github.com/jsbsan/GMAO-FACTORY/tree/main/Prompt" target="_blank" rel="noopener" class="mycode_url">https://github.com/jsbsan/GMAO-FACTORY/tree/main/Prompt</a><br />
Documentación: <a href="https://github.com/jsbsan/GMAO-FACTORY/tree/main/docs" target="_blank" rel="noopener" class="mycode_url">https://github.com/jsbsan/GMAO-FACTORY/tree/main/docs</a><br />
Incluso la documentación (manual del programa, diagramas, etc) y el readme.md fue generada por la IA..... <br />
<br />
Saludos<br />
<br />
Julio<br />
<br />
Lista de reproducción de video tutoriales: <br />
<a href="https://www.youtube.com/playlist?list=PLY1AHIjJwXVHrTB8cBxum4e2S4C8eMwGQ" target="_blank" rel="noopener" class="mycode_url">https://www.youtube.com/playlist?list=PL...2S4C8eMwGQ</a>]]></description>
			<content:encoded><![CDATA[Feliz año nuevo 2026!<br />
<br />
Buenas chicos, hace tiempo que no me pasaba por el foro y escribía en él. <img src="https://gambas-es.org/images/smilies/blush.png" alt="Blush" title="Blush" class="smilie smilie_12" /><br />
Durante estos años, casi no he programado con gambas, pero si con python y VBA de excel, bueno <img src="https://gambas-es.org/images/smilies/rolleyes.png" alt="Rolleyes" title="Rolleyes" class="smilie smilie_6" /> ... realmente he estado usando la IA de gemini para ir haciendo mis pequeñas herramientas del día a día.<br />
<br />
Os presento  mi último proyecto, hecho durante estas vacaciones de navidad, y en un tiempo record,  sin prácticamente escribir ni una sola línea de código (en python ), eso si, através de gemini-canvas (versión profesional) y todo usando prompt (muchos), para crear el programa desde cero e ir ampliándolo. <br />
Fue un proceso muy fue iterativo: <br />
- escribir un prompt con lo que quería hacer o añadir.<br />
- ejecutar <br />
- apuntar los errores <br />
- prompt describiendo el error a gemini (he usado el editor visual studio code)<br />
- hacer las correcciones que decía gemini (normalmente generaba el archivo ya corregido)<br />
- volver a ejecutar.<br />
<br />
He documentado casi el 100% de los prompts que escribía ( <a href="https://github.com/jsbsan/GMAO-FACTORY/tree/main/Prompt" target="_blank" rel="noopener" class="mycode_url">https://github.com/jsbsan/GMAO-FACTORY/tree/main/Prompt</a> ). Las respuestas que me daba la IA, no las he apuntado. <img src="https://gambas-es.org/images/smilies/angel.png" alt="Angel" title="Angel" class="smilie smilie_10" />  .<br />
Cuando se quedaba "atascada" la IA, abría una nueva conversación y subía de nuevo los archivos. Inicialmente el proyecto era un único archivo, pero luego lo tuvo que dividirlo para facilitar los cambios y que no se "colgara".<br />
<br />
Gmao-factoy:<br />
Es un sistema de gestión de mantenimiento, para llevar el mantenimiento de equipos/maquinaria/edificios.<br />
La idea era tener una aplicación que trabajar "offline" (sin internet) para aquellos sitios donde el internet no llega o están aislados, y necesitan llevar el registro de inventario de equipo, mantenimiento preventivo, ordenes de trabajo, y correctivos/incidencias realizados.<br />
<br />
En github lo podeis ver en:<br />
<a href="https://github.com/jsbsan/GMAO-FACTORY" target="_blank" rel="noopener" class="mycode_url">https://github.com/jsbsan/GMAO-FACTORY</a><br />
<br />
Código fuente: <a href="https://github.com/jsbsan/GMAO-FACTORY/tree/main/src" target="_blank" rel="noopener" class="mycode_url">https://github.com/jsbsan/GMAO-FACTORY/tree/main/src</a><br />
Prompts para generarlo: <a href="https://github.com/jsbsan/GMAO-FACTORY/tree/main/Prompt" target="_blank" rel="noopener" class="mycode_url">https://github.com/jsbsan/GMAO-FACTORY/tree/main/Prompt</a><br />
Documentación: <a href="https://github.com/jsbsan/GMAO-FACTORY/tree/main/docs" target="_blank" rel="noopener" class="mycode_url">https://github.com/jsbsan/GMAO-FACTORY/tree/main/docs</a><br />
Incluso la documentación (manual del programa, diagramas, etc) y el readme.md fue generada por la IA..... <br />
<br />
Saludos<br />
<br />
Julio<br />
<br />
Lista de reproducción de video tutoriales: <br />
<a href="https://www.youtube.com/playlist?list=PLY1AHIjJwXVHrTB8cBxum4e2S4C8eMwGQ" target="_blank" rel="noopener" class="mycode_url">https://www.youtube.com/playlist?list=PL...2S4C8eMwGQ</a>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Devorado por la malvada sierpe...]]></title>
			<link>https://gambas-es.org/thread-1976.html</link>
			<pubDate>Tue, 05 Aug 2025 08:52:20 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=4">Shordi</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-1976.html</guid>
			<description><![CDATA[Pues eso, terminé mi último proyecto post jubilación y me dije a mí mismo: "Mimismo ¿Qué hago ahora?" y mimismo me contestó "cosas nuevas". Entonces me vino a la menta una obviedad que, por culpa de mi adicción a las gambas, se me había pasado por alto: "Estás pegándote cabezazos con las IAs porque no saben casi nada de Gambas y lo confunden con Python. Si tanto saben de Python será porque millones de frikies han sido devorados por la serpiente, no es posible que no se haya inventado nada para programar que, al menos, iguale a tu amado Gambas. Busca hombre, fuera prejuicios".<br />
<br />
Unas búsquedas, unas consultas y tras una pelea con mi ignorancia y con los procesos de instalación, PyCharm con pSide6 me han "enganchadito", que es como enganchado, pero más flojito.<br />
<br />
Así pues, tras un par de días de probar cosas con PyQt y con PyCharm, se me ha ocurrido mirar éste foro de python dentro de las tripas de la gamba y que, lo creáis o no, nunca había visitado.<br />
<br />
Agradable sorpresa de veros por aquí, aunque sea con poquitos hilos.<br />
<br />
Como método de aprendizaje quiero reescribir en Python algunos de los programas que tengo hechos en Gambas. He empezado por el editor Risa y ya os contaré cómo me va.<br />
<br />
Así pues, perdón Cónsul, ahora me paseo por la barriga de la sierpe, como un nuevo Jonás en la ballena. Son cosas de la vejez, supongo...<br />
<br />
Saludos]]></description>
			<content:encoded><![CDATA[Pues eso, terminé mi último proyecto post jubilación y me dije a mí mismo: "Mimismo ¿Qué hago ahora?" y mimismo me contestó "cosas nuevas". Entonces me vino a la menta una obviedad que, por culpa de mi adicción a las gambas, se me había pasado por alto: "Estás pegándote cabezazos con las IAs porque no saben casi nada de Gambas y lo confunden con Python. Si tanto saben de Python será porque millones de frikies han sido devorados por la serpiente, no es posible que no se haya inventado nada para programar que, al menos, iguale a tu amado Gambas. Busca hombre, fuera prejuicios".<br />
<br />
Unas búsquedas, unas consultas y tras una pelea con mi ignorancia y con los procesos de instalación, PyCharm con pSide6 me han "enganchadito", que es como enganchado, pero más flojito.<br />
<br />
Así pues, tras un par de días de probar cosas con PyQt y con PyCharm, se me ha ocurrido mirar éste foro de python dentro de las tripas de la gamba y que, lo creáis o no, nunca había visitado.<br />
<br />
Agradable sorpresa de veros por aquí, aunque sea con poquitos hilos.<br />
<br />
Como método de aprendizaje quiero reescribir en Python algunos de los programas que tengo hechos en Gambas. He empezado por el editor Risa y ya os contaré cómo me va.<br />
<br />
Así pues, perdón Cónsul, ahora me paseo por la barriga de la sierpe, como un nuevo Jonás en la ballena. Son cosas de la vejez, supongo...<br />
<br />
Saludos]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Pycharm. Ejecutar desde script o de forma nativa]]></title>
			<link>https://gambas-es.org/thread-1809.html</link>
			<pubDate>Thu, 10 Oct 2024 11:34:12 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=3">Shell</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-1809.html</guid>
			<description><![CDATA[Buenas!.<br />
<br />
Desde una actualización del ide Pycharm. Ahora muestra un mensaje como este:<br />
 <br />
<blockquote class="mycode_quote"><cite>Cita:</cite>The IDE seems to be launched with a script launcher ('bin/pycharm.sh'). Please consider switching to a native launcher ('bin/pycharm') for better experience.</blockquote>
<br />
Cuando instalé Pycharm ( la versión Community) , lo descargué de su página, era un archivo targ.zg, lo descomprimí en un directorio "x" de<br />
mi usuario y desde este ejecuté su script. No necesita una instalación en los archivos del sistema.<br />
Debió crear enlaces en el menú para no tener que estar ejecutando desde la terminal.<br />
<br />
Ahora con la nueva actualización siempre muestra el mensaje de arriba. Que se puede desactivar o pasar de el. Pero no sé a cuenta<br />
de que muestra eso ahora. Supongo que lo mostrará en distintos sistemas operativos. Lógicamente si ejecutas desde un script en este se<br />
establece una serie de parámetros de todo tipo. Cosa que a lo mejor no hace directamente ejecutando su binario sin más.<br />
<br />
No acabo de acostumbrarme al editor ( con tanta sugerencia ).<br />
Por ejemplo ( es solo eso), escribo Pepe en el editor y Pycharm me dice. Ah si "Pepe", el hijo de Marujita.<br />
Que no lesches, que solo quiero poner Pepe en el código, estate quieto y no me pongas tantas referencias, cansino.<br />
<br />
Pero tiene cosas que son bastante interesantes.<br />
<br />
Saludos]]></description>
			<content:encoded><![CDATA[Buenas!.<br />
<br />
Desde una actualización del ide Pycharm. Ahora muestra un mensaje como este:<br />
 <br />
<blockquote class="mycode_quote"><cite>Cita:</cite>The IDE seems to be launched with a script launcher ('bin/pycharm.sh'). Please consider switching to a native launcher ('bin/pycharm') for better experience.</blockquote>
<br />
Cuando instalé Pycharm ( la versión Community) , lo descargué de su página, era un archivo targ.zg, lo descomprimí en un directorio "x" de<br />
mi usuario y desde este ejecuté su script. No necesita una instalación en los archivos del sistema.<br />
Debió crear enlaces en el menú para no tener que estar ejecutando desde la terminal.<br />
<br />
Ahora con la nueva actualización siempre muestra el mensaje de arriba. Que se puede desactivar o pasar de el. Pero no sé a cuenta<br />
de que muestra eso ahora. Supongo que lo mostrará en distintos sistemas operativos. Lógicamente si ejecutas desde un script en este se<br />
establece una serie de parámetros de todo tipo. Cosa que a lo mejor no hace directamente ejecutando su binario sin más.<br />
<br />
No acabo de acostumbrarme al editor ( con tanta sugerencia ).<br />
Por ejemplo ( es solo eso), escribo Pepe en el editor y Pycharm me dice. Ah si "Pepe", el hijo de Marujita.<br />
Que no lesches, que solo quiero poner Pepe en el código, estate quieto y no me pongas tantas referencias, cansino.<br />
<br />
Pero tiene cosas que son bastante interesantes.<br />
<br />
Saludos]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Se pueden combinar Gambas y Python?]]></title>
			<link>https://gambas-es.org/thread-1586.html</link>
			<pubDate>Thu, 04 Jan 2024 13:40:53 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=19">tercoide</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-1586.html</guid>
			<description><![CDATA[Esta librería permite abrir/editar/guardar archivos DXF:<br />
<br />
<a href="https://ezdxf.readthedocs.io/en/stable/introduction.html" target="_blank" rel="noopener" class="mycode_url">https://ezdxf.readthedocs.io/en/stable/i...ction.html</a><br />
<br />
Esta pensada para ser usada en Python, pero me preguntaba si es posible usarla en Gambas con llamadas Extern tal como hacemos con las librerías en C. Alguien tiene experiencia en el tema?]]></description>
			<content:encoded><![CDATA[Esta librería permite abrir/editar/guardar archivos DXF:<br />
<br />
<a href="https://ezdxf.readthedocs.io/en/stable/introduction.html" target="_blank" rel="noopener" class="mycode_url">https://ezdxf.readthedocs.io/en/stable/i...ction.html</a><br />
<br />
Esta pensada para ser usada en Python, pero me preguntaba si es posible usarla en Gambas con llamadas Extern tal como hacemos con las librerías en C. Alguien tiene experiencia en el tema?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Consulta a SQLite3]]></title>
			<link>https://gambas-es.org/thread-881.html</link>
			<pubDate>Mon, 02 May 2022 13:33:57 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=10">guizans</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-881.html</guid>
			<description><![CDATA[Hola<br />
<br />
Estoy trasteando con Python y una base de datos en SQLite3. Tengo una función que recibe un parámetro de tipo String, hace la búsqueda en la base de datos y devuelve el resultado.<br />
<br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>def devolver(a):<br />
&nbsp;&nbsp;&nbsp;&nbsp;sentencia = "SELECT * FROM articulos WHERE ID=?"<br />
&nbsp;&nbsp;&nbsp;&nbsp;cursor.execute(setencia,a)<br />
&nbsp;&nbsp;&nbsp;&nbsp;return cursor.fetchall()</code></div></div><br />
Esto funciona perfectamente siempre y cuando el valor pasado exista en la base de datos, si no existe el programa se cae y me da un error en la línea execute. Pero si pongo esto:<br />
<br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>def devolver(a):<br />
&nbsp;&nbsp;&nbsp;&nbsp;sentencia = "SELECT * FROM articulos WHERE ID=?"<br />
&nbsp;&nbsp;&nbsp;&nbsp;cursor.execute(setencia,[a])<br />
&nbsp;&nbsp;&nbsp;&nbsp;return cursor.fetchall()</code></div></div><br />
 funciona perfectamente, es decir, si no existe en la base de datos devuelve una lista vacia. No logro encontrar información de por que este comportamiento. ¿Alguien sabe el por qué?<br />
Un saludo.]]></description>
			<content:encoded><![CDATA[Hola<br />
<br />
Estoy trasteando con Python y una base de datos en SQLite3. Tengo una función que recibe un parámetro de tipo String, hace la búsqueda en la base de datos y devuelve el resultado.<br />
<br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>def devolver(a):<br />
&nbsp;&nbsp;&nbsp;&nbsp;sentencia = "SELECT * FROM articulos WHERE ID=?"<br />
&nbsp;&nbsp;&nbsp;&nbsp;cursor.execute(setencia,a)<br />
&nbsp;&nbsp;&nbsp;&nbsp;return cursor.fetchall()</code></div></div><br />
Esto funciona perfectamente siempre y cuando el valor pasado exista en la base de datos, si no existe el programa se cae y me da un error en la línea execute. Pero si pongo esto:<br />
<br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>def devolver(a):<br />
&nbsp;&nbsp;&nbsp;&nbsp;sentencia = "SELECT * FROM articulos WHERE ID=?"<br />
&nbsp;&nbsp;&nbsp;&nbsp;cursor.execute(setencia,[a])<br />
&nbsp;&nbsp;&nbsp;&nbsp;return cursor.fetchall()</code></div></div><br />
 funciona perfectamente, es decir, si no existe en la base de datos devuelve una lista vacia. No logro encontrar información de por que este comportamiento. ¿Alguien sabe el por qué?<br />
Un saludo.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[[Resuelto] Problema con robot y python adafruit]]></title>
			<link>https://gambas-es.org/thread-822.html</link>
			<pubDate>Mon, 31 Jan 2022 22:17:57 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=31">portaro</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-822.html</guid>
			<description><![CDATA[Alguien sabe como resolver esto ?<br />
<br />
Me monte un robot de rasptank lo he montado todo va bien pero al momento de instalar el setup.py que trae en el robot me da errores y al conectar por ssh y intentar levantar el servidor de comunicacion via browser del robot via una maquina externa me da este error →<br />
<blockquote class="mycode_quote"><cite>Cita:</cite>sudo python3 adeept_rasptank/server/webServer.py<br />
Traceback (most recent call last):<br />
  File "/home/pi/adeept_rasptank/server/webServer.py", line 14, in &lt;module&gt;<br />
    import RPIservo<br />
  File "/home/pi/adeept_rasptank/server/RPIservo.py", line 17, in &lt;module&gt;<br />
    pwm = Adafruit_PCA9685.PCA9685()<br />
  File "/usr/local/lib/python3.9/dist-packages/Adafruit_PCA9685-1.0.1-py3.9.egg/Adafruit_PCA9685/PCA9685.py", line 74, in __init__<br />
  File "/usr/local/lib/python3.9/dist-packages/Adafruit_GPIO-1.0.4-py3.9.egg/Adafruit_GPIO/I2C.py", line 66, in get_i2c_device<br />
  File "/usr/local/lib/python3.9/dist-packages/Adafruit_GPIO-1.0.4-py3.9.egg/Adafruit_GPIO/I2C.py", line 98, in __init__</blockquote>
ModuleNotFoundError: No module named 'Adafruit_PureIO'<br />
<br />
No se que problema es.<br />
<br />
<img src="https://i.postimg.cc/N0vTPSFy/300120221252.jpg" loading="lazy"  alt="[Imagen: 300120221252.jpg]" class="mycode_img" /><br />
<br />
<br />
No tengo mucha idea que problema podria ser he intentado instalar adafruit pero me da otro error →<br />
<blockquote class="mycode_quote"><cite>Cita:</cite>&#36; sudo pip install Adafruit-PureIO<br />
Looking in indexes: <a href="https://pypi.org/simple" target="_blank" rel="noopener" class="mycode_url">https://pypi.org/simple</a>, <a href="https://www.piwheels.org/simple" target="_blank" rel="noopener" class="mycode_url">https://www.piwheels.org/simple</a><br />
ERROR: Exception:<br />
Traceback (most recent call last):<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/cli/base_command.py", line 165, in exc_logging_wrapper<br />
    status = run_func(*args)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/cli/req_command.py", line 205, in wrapper<br />
    return func(self, options, args)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/commands/install.py", line 339, in run<br />
    requirement_set = resolver.resolve(<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 94, in resolve<br />
    result = self._result = resolver.resolve(<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 481, in resolve<br />
    state = resolution.resolve(requirements, max_rounds=max_rounds)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 348, in resolve<br />
    self._add_to_criteria(self.state.criteria, r, parent=None)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 172, in _add_to_criteria<br />
    if not criterion.candidates:<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/resolvelib/structs.py", line 151, in __bool__<br />
    return bool(self._sequence)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 155, in __bool__<br />
    return any(self)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 143, in &lt;genexpr&gt;<br />
    return (c for c in iterator if id&copy; not in self._incompatible_ids)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 44, in _iter_built<br />
    for version, func in infos:<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 294, in iter_index_candidate_infos<br />
    result = self._finder.find_best_candidate(<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/package_finder.py", line 868, in find_best_candidate<br />
    candidates = self.find_all_candidates(project_name)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/package_finder.py", line 809, in find_all_candidates<br />
    page_candidates = list(page_candidates_it)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/sources.py", line 134, in page_candidates<br />
    yield from self._candidates_from_page(self._link)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/package_finder.py", line 773, in process_project_url<br />
    page_links = list(parse_links(html_page, self._use_deprecated_html5lib))<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/collector.py", line 310, in wrapper_wrapper<br />
    return list(fn(page, use_deprecated_html5lib))<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/collector.py", line 350, in parse_links<br />
    parser.feed(page.content.decode(encoding))<br />
  File "/usr/lib/python3.9/html/parser.py", line 110, in feed<br />
    self.goahead(0)<br />
  File "/usr/lib/python3.9/html/parser.py", line 178, in goahead<br />
    k = self.parse_html_declaration(i)<br />
  File "/usr/lib/python3.9/html/parser.py", line 269, in parse_html_declaration<br />
    self.handle_decl(rawdata[i+2:gtpos])<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/collector.py", line 405, in handle_decl<br />
    self._raise_error()<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/collector.py", line 426, in _raise_error<br />
    raise ValueError(<br />
ValueError: HTML doctype missing or incorrect. Expected &lt;!DOCTYPE html&gt;.<br />
<br />
If you believe this error to be incorrect, try passing the command line option --use-deprecated=html5lib and please leave a comment on the pip issue at <a href="https://github.com/pypa/pip/issues/10825" target="_blank" rel="noopener" class="mycode_url">https://github.com/pypa/pip/issues/10825</a>.</blockquote>
<br />
Si alguien sabe que puede ser o si supiera decirme si es problema de software o bien seria algo de mi montaje decidmelo, muchas gracias.]]></description>
			<content:encoded><![CDATA[Alguien sabe como resolver esto ?<br />
<br />
Me monte un robot de rasptank lo he montado todo va bien pero al momento de instalar el setup.py que trae en el robot me da errores y al conectar por ssh y intentar levantar el servidor de comunicacion via browser del robot via una maquina externa me da este error →<br />
<blockquote class="mycode_quote"><cite>Cita:</cite>sudo python3 adeept_rasptank/server/webServer.py<br />
Traceback (most recent call last):<br />
  File "/home/pi/adeept_rasptank/server/webServer.py", line 14, in &lt;module&gt;<br />
    import RPIservo<br />
  File "/home/pi/adeept_rasptank/server/RPIservo.py", line 17, in &lt;module&gt;<br />
    pwm = Adafruit_PCA9685.PCA9685()<br />
  File "/usr/local/lib/python3.9/dist-packages/Adafruit_PCA9685-1.0.1-py3.9.egg/Adafruit_PCA9685/PCA9685.py", line 74, in __init__<br />
  File "/usr/local/lib/python3.9/dist-packages/Adafruit_GPIO-1.0.4-py3.9.egg/Adafruit_GPIO/I2C.py", line 66, in get_i2c_device<br />
  File "/usr/local/lib/python3.9/dist-packages/Adafruit_GPIO-1.0.4-py3.9.egg/Adafruit_GPIO/I2C.py", line 98, in __init__</blockquote>
ModuleNotFoundError: No module named 'Adafruit_PureIO'<br />
<br />
No se que problema es.<br />
<br />
<img src="https://i.postimg.cc/N0vTPSFy/300120221252.jpg" loading="lazy"  alt="[Imagen: 300120221252.jpg]" class="mycode_img" /><br />
<br />
<br />
No tengo mucha idea que problema podria ser he intentado instalar adafruit pero me da otro error →<br />
<blockquote class="mycode_quote"><cite>Cita:</cite>&#36; sudo pip install Adafruit-PureIO<br />
Looking in indexes: <a href="https://pypi.org/simple" target="_blank" rel="noopener" class="mycode_url">https://pypi.org/simple</a>, <a href="https://www.piwheels.org/simple" target="_blank" rel="noopener" class="mycode_url">https://www.piwheels.org/simple</a><br />
ERROR: Exception:<br />
Traceback (most recent call last):<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/cli/base_command.py", line 165, in exc_logging_wrapper<br />
    status = run_func(*args)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/cli/req_command.py", line 205, in wrapper<br />
    return func(self, options, args)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/commands/install.py", line 339, in run<br />
    requirement_set = resolver.resolve(<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 94, in resolve<br />
    result = self._result = resolver.resolve(<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 481, in resolve<br />
    state = resolution.resolve(requirements, max_rounds=max_rounds)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 348, in resolve<br />
    self._add_to_criteria(self.state.criteria, r, parent=None)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 172, in _add_to_criteria<br />
    if not criterion.candidates:<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_vendor/resolvelib/structs.py", line 151, in __bool__<br />
    return bool(self._sequence)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 155, in __bool__<br />
    return any(self)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 143, in &lt;genexpr&gt;<br />
    return (c for c in iterator if id&copy; not in self._incompatible_ids)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 44, in _iter_built<br />
    for version, func in infos:<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 294, in iter_index_candidate_infos<br />
    result = self._finder.find_best_candidate(<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/package_finder.py", line 868, in find_best_candidate<br />
    candidates = self.find_all_candidates(project_name)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/package_finder.py", line 809, in find_all_candidates<br />
    page_candidates = list(page_candidates_it)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/sources.py", line 134, in page_candidates<br />
    yield from self._candidates_from_page(self._link)<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/package_finder.py", line 773, in process_project_url<br />
    page_links = list(parse_links(html_page, self._use_deprecated_html5lib))<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/collector.py", line 310, in wrapper_wrapper<br />
    return list(fn(page, use_deprecated_html5lib))<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/collector.py", line 350, in parse_links<br />
    parser.feed(page.content.decode(encoding))<br />
  File "/usr/lib/python3.9/html/parser.py", line 110, in feed<br />
    self.goahead(0)<br />
  File "/usr/lib/python3.9/html/parser.py", line 178, in goahead<br />
    k = self.parse_html_declaration(i)<br />
  File "/usr/lib/python3.9/html/parser.py", line 269, in parse_html_declaration<br />
    self.handle_decl(rawdata[i+2:gtpos])<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/collector.py", line 405, in handle_decl<br />
    self._raise_error()<br />
  File "/usr/local/lib/python3.9/dist-packages/pip/_internal/index/collector.py", line 426, in _raise_error<br />
    raise ValueError(<br />
ValueError: HTML doctype missing or incorrect. Expected &lt;!DOCTYPE html&gt;.<br />
<br />
If you believe this error to be incorrect, try passing the command line option --use-deprecated=html5lib and please leave a comment on the pip issue at <a href="https://github.com/pypa/pip/issues/10825" target="_blank" rel="noopener" class="mycode_url">https://github.com/pypa/pip/issues/10825</a>.</blockquote>
<br />
Si alguien sabe que puede ser o si supiera decirme si es problema de software o bien seria algo de mi montaje decidmelo, muchas gracias.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Crear IDE en Glade e invocarlo con Python]]></title>
			<link>https://gambas-es.org/thread-773.html</link>
			<pubDate>Fri, 17 Dec 2021 16:55:06 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=65">AlfredoSC</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-773.html</guid>
			<description><![CDATA[Hola a todos:<br />
<br />
Aunque Glade ya es viejo, yo lo acabo de conocer. Comprendiendo que programar en Python el IDE de cada proyecto usando Tkinter, resulta en muchas líneas de código y que el posicionamiento de los controles y ventanas con "place", "grid" o pack requiere estar posicionando cada control en coordenadas que ameritan llevar en la mente una imagen de lo que se quiere lograr, pues Glade lo resuleve en buena medida.<br />
<br />
La versión original de Glade (para W&#36; y Linux) incluye las imágenes de controles que uno quiera seleccionar. Pero la versión mas reciente de Glade (minimalista), usa sólo los nombres de todos los controles, para seleccionarlos y luego "pegarlos" en la ventana principal que constituye el IDE de nuestro proyecto.<br />
<br />
Al final, Glade guardará nuestro archivo como *.glade, el cual no es sino un archivo XML, el cual podrá ser invocado por nuestro programa en Python, como por ejemplo:<br />
<br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>gladeFile = "glade/vent2.glade"<br />
        self.builder = gtk.Builder()<br />
        self.builder.add_from_file(gladeFile)<br />
        self.builder.connect_signals(self)</code></div></div><br />
y luego ir llamando los controles del archivo vent2.glade de la siguiente forma:<br />
<br />
       <div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>cmdBorrar = self.builder.get_object("cmdBorrar")<br />
        cmdBorrar.connect("clicked", self.Borrar)</code></div></div><br />
Las librerías Gtk+ y GI  (de GNOME) ya están por default en muchas de las distros Linux<br />
por lo que realmente no se necesita instalar mucho o nada. Pero en W&#36; es otra cosa. Es casi imposible instalar esas librerías, por lo que actualmente mis diseños en W&#36; arrojan el mensaje:<br />
<br />
"Error: not found gi module"<br />
<br />
Parece que no hay "equipo" de entusiastas trabajando para este caso en W&#36;.<br />
<br />
Pues lo dejo, por si resulta de interés para alguien....]]></description>
			<content:encoded><![CDATA[Hola a todos:<br />
<br />
Aunque Glade ya es viejo, yo lo acabo de conocer. Comprendiendo que programar en Python el IDE de cada proyecto usando Tkinter, resulta en muchas líneas de código y que el posicionamiento de los controles y ventanas con "place", "grid" o pack requiere estar posicionando cada control en coordenadas que ameritan llevar en la mente una imagen de lo que se quiere lograr, pues Glade lo resuleve en buena medida.<br />
<br />
La versión original de Glade (para W&#36; y Linux) incluye las imágenes de controles que uno quiera seleccionar. Pero la versión mas reciente de Glade (minimalista), usa sólo los nombres de todos los controles, para seleccionarlos y luego "pegarlos" en la ventana principal que constituye el IDE de nuestro proyecto.<br />
<br />
Al final, Glade guardará nuestro archivo como *.glade, el cual no es sino un archivo XML, el cual podrá ser invocado por nuestro programa en Python, como por ejemplo:<br />
<br />
<div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>gladeFile = "glade/vent2.glade"<br />
        self.builder = gtk.Builder()<br />
        self.builder.add_from_file(gladeFile)<br />
        self.builder.connect_signals(self)</code></div></div><br />
y luego ir llamando los controles del archivo vent2.glade de la siguiente forma:<br />
<br />
       <div class="codeblock"><div class="title">Código:</div><div class="body" dir="ltr"><code>cmdBorrar = self.builder.get_object("cmdBorrar")<br />
        cmdBorrar.connect("clicked", self.Borrar)</code></div></div><br />
Las librerías Gtk+ y GI  (de GNOME) ya están por default en muchas de las distros Linux<br />
por lo que realmente no se necesita instalar mucho o nada. Pero en W&#36; es otra cosa. Es casi imposible instalar esas librerías, por lo que actualmente mis diseños en W&#36; arrojan el mensaje:<br />
<br />
"Error: not found gi module"<br />
<br />
Parece que no hay "equipo" de entusiastas trabajando para este caso en W&#36;.<br />
<br />
Pues lo dejo, por si resulta de interés para alguien....]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Tkinter 8.5 . Manual de referencia. GUI para Python]]></title>
			<link>https://gambas-es.org/thread-724.html</link>
			<pubDate>Sat, 13 Nov 2021 13:52:06 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=3">Shell</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-724.html</guid>
			<description><![CDATA[Buenas!.<br />
<br />
En este enlace encontrareis un enlace a las principales funciones de Tkinter en inglés. <img src="https://gambas-es.org/images/smilies/rolleyes.png" alt="Rolleyes" title="Rolleyes" class="smilie smilie_6" /><br />
<br />
<a href="https://anzeljg.github.io/rin2/book2/2405/docs/tkinter/index.html" target="_blank" rel="noopener" class="mycode_url">Tkinter 8.5 reference: a GUI for Python</a><br />
<br />
<br />
Referencia:<br />
<br />
<a href="https://www.nmt.edu/" target="_blank" rel="noopener" class="mycode_url">New Mexico Institute of Mining and Technology</a><br />
<br />
P.d el enlace que hace referencia al instituto donde se aloja el manual de referencia no funcionba o se queda esperando.<br />
<br />
Saludos]]></description>
			<content:encoded><![CDATA[Buenas!.<br />
<br />
En este enlace encontrareis un enlace a las principales funciones de Tkinter en inglés. <img src="https://gambas-es.org/images/smilies/rolleyes.png" alt="Rolleyes" title="Rolleyes" class="smilie smilie_6" /><br />
<br />
<a href="https://anzeljg.github.io/rin2/book2/2405/docs/tkinter/index.html" target="_blank" rel="noopener" class="mycode_url">Tkinter 8.5 reference: a GUI for Python</a><br />
<br />
<br />
Referencia:<br />
<br />
<a href="https://www.nmt.edu/" target="_blank" rel="noopener" class="mycode_url">New Mexico Institute of Mining and Technology</a><br />
<br />
P.d el enlace que hace referencia al instituto donde se aloja el manual de referencia no funcionba o se queda esperando.<br />
<br />
Saludos]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Visual Studio Code. Ejecutar el inteprete en el directorio actual]]></title>
			<link>https://gambas-es.org/thread-719.html</link>
			<pubDate>Sun, 07 Nov 2021 15:19:51 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=3">Shell</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-719.html</guid>
			<description><![CDATA[Buenas!.<br />
<br />
Uno de los problemas que es probable que encontremos es que queramos ejecutar el interprete en el directorio actual<br />
y no en el directorio añadido que pueda contener otros subdirectorios. Imaginar que queremos ejecutar un código que se encuentra<br />
en uno de esos subdirectorios.<br />
<br />
Error típico. Tenemos un código que hace uso de un imagen, aunque estén ambos en el mismo directorio probablemente no la encuentre y de error.<br />
Teniendo en cuenta que esto suele ocurrir cuando son pruebas, ejemplos.<br />
<br />
Me funcionó esto:<br />
<blockquote class="mycode_quote"><cite>Cita:</cite>En "Settings del usuario", buscar "python.terminal.executeInFileDir" y poner el valor a True.</blockquote>
<br />
<a href="https://stackoverflow.com/questions/53900141/how-to-run-python-interactive-in-current-files-directory-in-visual-studio-code/56091981" target="_blank" rel="noopener" class="mycode_url">How to run python interactive in current file's directory in Visual Studio Code?</a><br />
<br />
No es un error que este acostumbrado a ver en SublimeText o Atom.<br />
<br />
Saludos]]></description>
			<content:encoded><![CDATA[Buenas!.<br />
<br />
Uno de los problemas que es probable que encontremos es que queramos ejecutar el interprete en el directorio actual<br />
y no en el directorio añadido que pueda contener otros subdirectorios. Imaginar que queremos ejecutar un código que se encuentra<br />
en uno de esos subdirectorios.<br />
<br />
Error típico. Tenemos un código que hace uso de un imagen, aunque estén ambos en el mismo directorio probablemente no la encuentre y de error.<br />
Teniendo en cuenta que esto suele ocurrir cuando son pruebas, ejemplos.<br />
<br />
Me funcionó esto:<br />
<blockquote class="mycode_quote"><cite>Cita:</cite>En "Settings del usuario", buscar "python.terminal.executeInFileDir" y poner el valor a True.</blockquote>
<br />
<a href="https://stackoverflow.com/questions/53900141/how-to-run-python-interactive-in-current-files-directory-in-visual-studio-code/56091981" target="_blank" rel="noopener" class="mycode_url">How to run python interactive in current file's directory in Visual Studio Code?</a><br />
<br />
No es un error que este acostumbrado a ver en SublimeText o Atom.<br />
<br />
Saludos]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[El BIORRITMO programado en Python3]]></title>
			<link>https://gambas-es.org/thread-703.html</link>
			<pubDate>Tue, 26 Oct 2021 16:09:10 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=65">AlfredoSC</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-703.html</guid>
			<description><![CDATA[Hola a todos:<br />
<br />
Hace muchos años me encontré un libro lamado "La Ciencia del Biorritmo" y lo leí con gran interés. Me di cuenta que realmente no es una ciencia, sino una buena teoría, quizá una buena hipótesis. Con muchas pruebas que el autor asegura haber realizado, encontró que la vida del ser humano se rige por 3 estados: Físico, Emocional e Intelectual.<br />
<br />
Cada uno de esos estados tiene un periodo de días: 23 para el Físico, 28 para el Emocional y 33 para el Intelectual. El cálculo consiste en calcular el número de días totales vividos de una persona, hasta la fecha actual ( o la fecha de la que se quiera conocer el biorritomo), lo cual se hace multiplicando 365.25 por la edad y luego sumando o restando los días del mes o meses que falten por transcurrir o los transcurridos.<br />
<br />
Con los días vividos (DV) calculados se procede a dividir esa cantidad por 23, por 28 y por 33 y los resultados obtenidos se descarta la parte entera, volviendo a multiplicar por 23, 28 o 33 las partes fraccionarias resultantes.<br />
<br />
Estos resultados ofrecerán cantidades entre 0 y 23, entre 0 y 28 y entre 0 y 33. Según la teoría del Biorritmo, un 0 equivale a un día crítico, mientras que dias subsecuentes se consideran de recuperación, hasta que nuevamente se encuentra otro día 0.<br />
<br />
La teoría se basa en que el autor tomó las fechas de nacimiento de varias celebridades, sobre todo aquellas que fallecieron por accidentes, enfermedades graves, etc. y que calculando su biorritmo al día de su muerte se comprobó que sucedió en uno, dos y hasta tres días críticos.<br />
<br />
Aquí pongo un programa en Python que hace todos esos engorrosos cálculos, que además puede servir de ejemplo para quienes van incursionando en Python. (También lo he elabordo en Gambas3):<br />
<br />
Saludos a todos:<br /><!-- start: postbit_attachments_attachment -->
<div class="row mt-2 g-1 text-muted">
	<div class="col-auto align-self-center">

<!-- start: attachment_icon -->
<img src="https://gambas-es.org/images/attachtypes/zip.png" title="ZIP File" style="height: 16px; width: 16px" border="0" alt=".zip" />
<!-- end: attachment_icon -->
		
	</div>
	<div class="col align-self-center">
		<a href="attachment.php?aid=178" target="_blank" title="">biorritmo.zip</a> (Tamaño: <span class="text-dark">1.88 KB</span> Descargas: <span class="text-dark">9)</span>
	</div>
</div>
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[Hola a todos:<br />
<br />
Hace muchos años me encontré un libro lamado "La Ciencia del Biorritmo" y lo leí con gran interés. Me di cuenta que realmente no es una ciencia, sino una buena teoría, quizá una buena hipótesis. Con muchas pruebas que el autor asegura haber realizado, encontró que la vida del ser humano se rige por 3 estados: Físico, Emocional e Intelectual.<br />
<br />
Cada uno de esos estados tiene un periodo de días: 23 para el Físico, 28 para el Emocional y 33 para el Intelectual. El cálculo consiste en calcular el número de días totales vividos de una persona, hasta la fecha actual ( o la fecha de la que se quiera conocer el biorritomo), lo cual se hace multiplicando 365.25 por la edad y luego sumando o restando los días del mes o meses que falten por transcurrir o los transcurridos.<br />
<br />
Con los días vividos (DV) calculados se procede a dividir esa cantidad por 23, por 28 y por 33 y los resultados obtenidos se descarta la parte entera, volviendo a multiplicar por 23, 28 o 33 las partes fraccionarias resultantes.<br />
<br />
Estos resultados ofrecerán cantidades entre 0 y 23, entre 0 y 28 y entre 0 y 33. Según la teoría del Biorritmo, un 0 equivale a un día crítico, mientras que dias subsecuentes se consideran de recuperación, hasta que nuevamente se encuentra otro día 0.<br />
<br />
La teoría se basa en que el autor tomó las fechas de nacimiento de varias celebridades, sobre todo aquellas que fallecieron por accidentes, enfermedades graves, etc. y que calculando su biorritmo al día de su muerte se comprobó que sucedió en uno, dos y hasta tres días críticos.<br />
<br />
Aquí pongo un programa en Python que hace todos esos engorrosos cálculos, que además puede servir de ejemplo para quienes van incursionando en Python. (También lo he elabordo en Gambas3):<br />
<br />
Saludos a todos:<br /><!-- start: postbit_attachments_attachment -->
<div class="row mt-2 g-1 text-muted">
	<div class="col-auto align-self-center">

<!-- start: attachment_icon -->
<img src="https://gambas-es.org/images/attachtypes/zip.png" title="ZIP File" style="height: 16px; width: 16px" border="0" alt=".zip" />
<!-- end: attachment_icon -->
		
	</div>
	<div class="col align-self-center">
		<a href="attachment.php?aid=178" target="_blank" title="">biorritmo.zip</a> (Tamaño: <span class="text-dark">1.88 KB</span> Descargas: <span class="text-dark">9)</span>
	</div>
</div>
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Programación en Python - Nivel básico]]></title>
			<link>https://gambas-es.org/thread-694.html</link>
			<pubDate>Sat, 23 Oct 2021 20:06:01 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=3">Shell</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-694.html</guid>
			<description><![CDATA[Buenas!.<br />
<br />
Os presento un curso de programación de Python que aunque dice básico, abarca muchos aspectos del lenguaje.<br />
Lo realizó la Asociación Cooperativa Vanguardista Tecnológica - Covantec R.L., Es una cooperativa de base tecnológica en Venezuela.<br />
<br />
<a href="https://entrenamiento-python-basico.readthedocs.io/es/latest/index.html#" target="_blank" rel="noopener" class="mycode_url">Programación en Python. Nivel Básico</a><br />
<br />
<a href="https://twitter.com/SomosCovantec" target="_blank" rel="noopener" class="mycode_url">Covantec R.L..Twitter</a><br />
<br />
<a href="https://github.com/Covantec" target="_blank" rel="noopener" class="mycode_url">Covantec R.L. GitHub</a><br />
<br />
Saludos]]></description>
			<content:encoded><![CDATA[Buenas!.<br />
<br />
Os presento un curso de programación de Python que aunque dice básico, abarca muchos aspectos del lenguaje.<br />
Lo realizó la Asociación Cooperativa Vanguardista Tecnológica - Covantec R.L., Es una cooperativa de base tecnológica en Venezuela.<br />
<br />
<a href="https://entrenamiento-python-basico.readthedocs.io/es/latest/index.html#" target="_blank" rel="noopener" class="mycode_url">Programación en Python. Nivel Básico</a><br />
<br />
<a href="https://twitter.com/SomosCovantec" target="_blank" rel="noopener" class="mycode_url">Covantec R.L..Twitter</a><br />
<br />
<a href="https://github.com/Covantec" target="_blank" rel="noopener" class="mycode_url">Covantec R.L. GitHub</a><br />
<br />
Saludos]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Migración de un proyecto de gambas3 a Python3]]></title>
			<link>https://gambas-es.org/thread-689.html</link>
			<pubDate>Thu, 21 Oct 2021 21:16:48 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=65">AlfredoSC</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-689.html</guid>
			<description><![CDATA[Hola:<br />
<br />
Conversando con Shell, ofrecí poner aquí mi proyecto en Python3, que es una migración que viene de gambas3, usando el puerto paralelo (que para muchas personas ya está "muerto", pero para otro grupo de gente es un puerto importante para obtener control de dispositivos externos.<br />
<br />
Se anexa el archivo SC6928B_PP.py comprimido.<br /><!-- start: postbit_attachments_attachment -->
<div class="row mt-2 g-1 text-muted">
	<div class="col-auto align-self-center">

<!-- start: attachment_icon -->
<img src="https://gambas-es.org/images/attachtypes/zip.png" title="ZIP File" style="height: 16px; width: 16px" border="0" alt=".zip" />
<!-- end: attachment_icon -->
		
	</div>
	<div class="col align-self-center">
		<a href="attachment.php?aid=177" target="_blank" title="">SC6928B_PP.zip</a> (Tamaño: <span class="text-dark">3.79 KB</span> Descargas: <span class="text-dark">4)</span>
	</div>
</div>
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[Hola:<br />
<br />
Conversando con Shell, ofrecí poner aquí mi proyecto en Python3, que es una migración que viene de gambas3, usando el puerto paralelo (que para muchas personas ya está "muerto", pero para otro grupo de gente es un puerto importante para obtener control de dispositivos externos.<br />
<br />
Se anexa el archivo SC6928B_PP.py comprimido.<br /><!-- start: postbit_attachments_attachment -->
<div class="row mt-2 g-1 text-muted">
	<div class="col-auto align-self-center">

<!-- start: attachment_icon -->
<img src="https://gambas-es.org/images/attachtypes/zip.png" title="ZIP File" style="height: 16px; width: 16px" border="0" alt=".zip" />
<!-- end: attachment_icon -->
		
	</div>
	<div class="col align-self-center">
		<a href="attachment.php?aid=177" target="_blank" title="">SC6928B_PP.zip</a> (Tamaño: <span class="text-dark">3.79 KB</span> Descargas: <span class="text-dark">4)</span>
	</div>
</div>
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Aprender Python]]></title>
			<link>https://gambas-es.org/thread-686.html</link>
			<pubDate>Wed, 20 Oct 2021 10:09:19 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=3">Shell</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-686.html</guid>
			<description><![CDATA[Buenas!.<br />
<br />
Este enlace es de la comunidad española de Python, partiendo de este se puede encontrar mucha más información.<br />
Así comienza.<br />
<br />
<a href="https://es.python.org/pages/aprende-python.html" target="_blank" rel="noopener" class="mycode_url">Aprende Python</a><br />
<br />
Saludos]]></description>
			<content:encoded><![CDATA[Buenas!.<br />
<br />
Este enlace es de la comunidad española de Python, partiendo de este se puede encontrar mucha más información.<br />
Así comienza.<br />
<br />
<a href="https://es.python.org/pages/aprende-python.html" target="_blank" rel="noopener" class="mycode_url">Aprende Python</a><br />
<br />
Saludos]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Editor de Python para principiantes]]></title>
			<link>https://gambas-es.org/thread-684.html</link>
			<pubDate>Tue, 19 Oct 2021 18:19:12 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=3">Shell</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-684.html</guid>
			<description><![CDATA[Buenas!<br />
<br />
Aunque es online, tiene posibilidad de descarga. Es muy sencillo.<br />
<br />
<a href="https://codewith.mu/es/" target="_blank" rel="noopener" class="mycode_url">Programa con Mu</a><br />
<br />
Saludos]]></description>
			<content:encoded><![CDATA[Buenas!<br />
<br />
Aunque es online, tiene posibilidad de descarga. Es muy sencillo.<br />
<br />
<a href="https://codewith.mu/es/" target="_blank" rel="noopener" class="mycode_url">Programa con Mu</a><br />
<br />
Saludos]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Anaconda Python y Conda]]></title>
			<link>https://gambas-es.org/thread-680.html</link>
			<pubDate>Mon, 18 Oct 2021 20:52:37 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://gambas-es.org/member.php?action=profile&uid=3">Shell</a>]]></dc:creator>
			<guid isPermaLink="false">https://gambas-es.org/thread-680.html</guid>
			<description><![CDATA[Buenas!.<br />
<br />
Es que lo de Conda me sonaba a coña, pero es como se llama.<br />
Conda es el gestor de paquetes de la aplicación Anaconda.<br />
<br />
<a href="https://elpythonista.com/anaconda" target="_blank" rel="noopener" class="mycode_url">Anaconda Python y Conda</a><br />
<br />
Nunca lo he usado. Demasiadas aplicaciones para escribir códigos sencillos.<br />
Pero creo que lo voy a usar más..<br />
<br />
<iframe width="560" height="315" src="//www.youtube-nocookie.com/embed/LDZX4ooRsWs" frameborder="0" allowfullscreen="true"></iframe><br />
<br />
¿ Vuott no te da envidia las chicas Python Anaconda ?<br />
<br />
Saludos]]></description>
			<content:encoded><![CDATA[Buenas!.<br />
<br />
Es que lo de Conda me sonaba a coña, pero es como se llama.<br />
Conda es el gestor de paquetes de la aplicación Anaconda.<br />
<br />
<a href="https://elpythonista.com/anaconda" target="_blank" rel="noopener" class="mycode_url">Anaconda Python y Conda</a><br />
<br />
Nunca lo he usado. Demasiadas aplicaciones para escribir códigos sencillos.<br />
Pero creo que lo voy a usar más..<br />
<br />
<iframe width="560" height="315" src="//www.youtube-nocookie.com/embed/LDZX4ooRsWs" frameborder="0" allowfullscreen="true"></iframe><br />
<br />
¿ Vuott no te da envidia las chicas Python Anaconda ?<br />
<br />
Saludos]]></content:encoded>
		</item>
	</channel>
</rss>