Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Missing "While True"

Abierto
#485 4 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
45/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
python

Línea de trabajo

Run the supplied Python 3.8 example through uncompyle6 and compare the output with the expected behavior. Trace the decompilation path handling the nested if and for inside while True; done means the while True loop is preserved and the duplicated return output is corrected.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Control Flow Python 3.8 Volunteer wanted Works on decompyle3

Description

"While True" will disappear if a "if" branch is indirectly under it

How to Reproduce

import time

L = ['a', 's']
def thread():
    while True:
        for c in L:
            if c == 'a':
                return
        time.sleep(0.5)

Output Given

# uncompyle6 version 3.9.1.dev0
# Python bytecode version base 3.8.0 (3413)
# Decompiled from: Python 3.8.10 (tags/v3.8.10:3d8993a, May  3 2021, 11:48:03) [MSC v.1928 64 bit (AMD64)]
# Embedded file name: simple.py
# Compiled at: 2024-03-05 23:05:50
# Size of source mod 2**32: 157 bytes
import time
L = ["a", "s"]

def thread():
    for c in L:
        if c == "a":
            return             return None
        time.sleep(0.5)

Expected behavior

def thread():
+    while True:
+        for c in L:
+            if c == "a":
+                return
-    for c in L:
-        if c == "a":
-            return             return None
        time.sleep(0.5)

Environment

  • Uncompyle6 version: output from uncompyle6 --version uncompyle6 3.9.1.dev0
  • xdis version: output from pydisasm --version pydisasm, version 6.1.0.dev0
  • Python version for the version of Python the byte-compiled the file: python -c "import sys; print(sys.version)" where python is the correct CPython or PyPy binary.
    3.8.10 (tags/v3.8.10:3d8993a, May 3 2021, 11:48:03) [MSC v.1928 64 bit (AMD64)]
  • OS and Version: Windows 11 (23H2)
Lenguaje dominante
Python
Estrellas
4.3k
Forks
464
Merge medio
10 h 7 min
PR fusionados (30 d)
1

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de rocky/python-uncompyle6

Todos los issues de rocky/python-uncompyle6

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.