Je pense pas, les fstrings ne sont pas générées, si le f"{password}" n’est pas explicitement dans le code il sera pas "généré", ou au moins interprété ?
Le fait que ce soit imbriqué force l’évaluation de l’intérieur vers l’extérieur, et que qui est évalué "à l’intérieur" donc éventuellement avec les variables ne sera pas "ré-évalué" une fois l’évaluation initiale effectuée.
Je confirme, tu ne peux pas changer le contenu du fstring à l'exécution. Le fstring est "compilé" en code pythonconverti en ASTcompilé en bytecode au moment du chargement du script.
# Grilled
Posté par jihele . Évalué à 6.
Damned, je viens de voir qu'un lien a déjà été publié. Pourtant j'avais cherché avant…
https://linuxfr.org/users/dovik/liens/python-3-12-0-final-now-available
Tant pis, je peux pas effacer le mien. Et puis je préfère la page de doc vers laquelle je pointe.
# Faille ?
Posté par Elfir3 . Évalué à 1.
Je découvre la PEP-701, c'est pas une faille de sécurité potentielle ?
J'imagine qu'il doit être possible de générer une fstring pour récupérer des informations sur le code exécutant. Exemple avec ce snippet à l'arache:
un
f"{password}"
devrait retourner des infos sensibles alors que c'était pas le cas, non?[^] # Re: Faille ?
Posté par Thomas Douillard . Évalué à 6.
Je pense pas, les fstrings ne sont pas générées, si le f"{password}" n’est pas explicitement dans le code il sera pas "généré", ou au moins interprété ?
Le fait que ce soit imbriqué force l’évaluation de l’intérieur vers l’extérieur, et que qui est évalué "à l’intérieur" donc éventuellement avec les variables ne sera pas "ré-évalué" une fois l’évaluation initiale effectuée.
Mais j’ai ptete pas compris.
[^] # Re: Faille ?
Posté par steph1978 . Évalué à 6.
Je confirme, tu ne peux pas changer le contenu du fstring à l'exécution. Le fstring est
"compilé" en code pythonconverti en ASTcompilé en bytecode au moment du chargement du script.Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.