Probleme d'argument fonction
Ferméyg_be Messages postés 22793 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 mai 2024 - 28 janv. 2023 à 16:21
- Probleme d'argument fonction
- Fonction si et - Guide
- Fonction moyenne excel - Guide
- Fonction somme excel - Guide
- Fonction trier excel - Guide
- Python est introuvable. exúcutez sans argument pour procúder ó l ✓ - Forum Ubuntu
7 réponses
27 janv. 2023 à 20:30
Bonjour,
Pas terrible l'utilisation de global de cette façon ...
27 janv. 2023 à 18:28
bonjour,
globals()["Button"+str(x)]=tkinter.Button(F, command=lambda y=x :Fonction(y))
28 janv. 2023 à 10:15
import tkinter F = tkinter.Tk() def Fonction(num): print(num) MyButtons={} x=0 y=5 while x != y: MyButtons[x]=tkinter.Button(F, command=lambda y=x :Fonction(y)) MyButtons[x].pack() x = x+1 F.mainloop()
Modifié le 28 janv. 2023 à 10:53
Bonjour,
D'autant que les widgets créés dans le programme principal sont visibles dans les fonctions eventuelles,
donc pas besoin de les globaliser ...
def show_entry(): txt = e1.get() ................... ................ e1 = Entry(f1, show = '*', width = 10) e1.place(x = 110,y = 10) e1.focus() .................
28 janv. 2023 à 15:28
La variable e1 dans ton exemple est globale, en effet.
L'utilisation de globals() permet de créer une variable globale avec un nom dynamique:
x=1 globals()["e"+str(x)]=123 print(globals()["e"+str(x)])
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionSalut.
Pr.Witherfire, as-tu pour ambition d'être une référence pour tout ce qu'il ne faut pas faire ? Tu tentes d'établir un record du code le plus crade ?
- import * ✓
- Obstination à vouloir utiliser des variables dynamiques. ✓
- Se servir d'une boucle while au lieu d'un simple for, de plus avec une condition de différence ✓
- Sauts de lignes inutiles nuisant à la lecture du code ✓
- Espaces manquants nuisant à la lecture du code ✓
- Identifiants non conformes et non représentatifs ✓
En 11 lignes de code, c'est pas mal, je pense tout de même que tu peux faire mieux (enfin pire pour nous).
Il existe des outils, lesquels sont utilisables en lignes de commandes dans ta console dos, et même utilisables dans les commandes d'exécutions de ton EDI, comme :
- black pour améliorer la mise en forme du code.
https://pypi.org/project/black/
- pyflakes (ou encore pep8) : analyseur des erreurs de code (bien moins strict que pylint)
https://pypi.org/project/pyflakes/
- pylint : même dessein que pyflakes, mais très très strict, cela peut être une assistance à améliorer sa façon de coder, il peut être configuré à souhaits.
https://pypi.org/project/pylint/
- vulture : pour la détection de code (variables, attributs, fonctions, etc) déclarés mais inusités, très pratique pour nettoyer du code.
https://pypi.org/project/vulture/
Ces outils indispensables doivent être dans la panoplie de tout bon codeur python.
28 janv. 2023 à 16:21
Je suis impressionné par tant d'intégrisme et d'intolérence! Un peu de non conformisme, cela n'a rien de crade.
Modifié le 28 janv. 2023 à 13:41
Bonjour Goupil,
Peut-être le sais-tu déjà, mais bon ... :-)
on peut insérer des liens directement cliquables avec l'une des icones présentes au dessus de la fenêtre de réponse:
Salut Phil,
bah non, il n'y a pas pour les visiteurs une façon d'insérer des liens dans les messages, il y a les boutons Bold, Italic, Underline, les 2 types de listes, les boutons d'insertions (image externe et code), et c'est tout =)
Après ça peut rester compréhensible qu'un visiteur ne puisse insérer des liens afin d'éviter le spam et la pub, mais il pourrait quand même y avoir des domaines « sûrs » qui seraient établis dans une liste blanche. Ça serait obligatoirement beaucoup plus de choses à gérér de la part des modos, contributeurs du forum. Rien n'est aisé dès l'instant où des « anonymes » peuvent écrire dans un forum.
Ce qui me gonfle le plus ici, ce sont les sauts de lignes qui ne sont pas respectés dans mes messages et cet insupportable système d'insertion de code, l'ancien était très bien.
28 janv. 2023 à 15:35
ah ok, tu ne vois donc pas ceci si je comprends bien:
28 janv. 2023 à 15:50
Non, on n'a pas ces 2 boutons ^^
28 janv. 2023 à 09:25
C'est certainement non conformiste. Dans le cadre d'un prototype personnel, je pense que cela peut fonctionner sans souci.