Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 10/05/2023, à 13:00

Emrhys13

[Résolu] message : mon script python ne repond pas

Bonjour,

contexte: je suis sous Ubuntu 23.04, Python 3.11.2
J'ai fait un script python qui appelle d'autres scripts python.
ca fonctionne correctement, les scripts se lancent et fonctionnent mais j'ai un popup avec le message ci dessous qui s'affiche au bout de quelques secondes. ca n’empêche pas de fonctionner mais ce n'est pas très esthétique.

"monscript.py" ne répond pas. vous pouvez soit attendre un peu pour continuer, soit forcer l'application à quitter

je voulais mettre un screenshot mais je n'ai pas trouvé comment faire sad

j'ai cherché sur internet différentes façons pour lancer les scripts mais j'ai toujours le même résultat

  • os.system("python3 /home/claude/monscript.py")

  • subprocess.run([sys.executable, "monscript.py"]) avec ou sans option timeout

  • subprocess.call([pgmpath + "/monscript.py"])

toutes ces méthodes fonctionnent mais toujours avec le popup après 3 ou 4 secondes
Il me semble que ce message est apparu avec les dernières version de python. j'avais un script similaire qui fonctionnait sur une ancienne version sans avoir ce popup.

pouvez vous m'aider pour supprimer ce popup et au moins m'indiquer quelle est la meilleure méthode pour lancer un script pour mon besoin?
Merci d'avance.

Dernière modification par Emrhys13 (Le 12/05/2023, à 17:38)

Hors ligne

#2 Le 10/05/2023, à 13:07

Vobul

Re : [Résolu] message : mon script python ne repond pas

Attends, tu utilises python pour lancer python ???


Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM

Hors ligne

#3 Le 10/05/2023, à 19:04

Emrhys13

Re : [Résolu] message : mon script python ne repond pas

Tu as raison, ce n'est pas nécessaire.
J'ai juste voulu montrer les diverses combinaisons que j'ai essayé et qui fonctionnent sauf que j'ai toujours ce fichu popup smile

Hors ligne

#4 Le 10/05/2023, à 19:43

Amiralgaby

Re : [Résolu] message : mon script python ne repond pas

Vodul a écrit :

Attends, tu utilises python pour lancer python ???

Ouai on est d'accord c'est perturbant x)

Bon, est-ce que c'est un intérêt sérieux de lancer comme ça ton script python ?
parce qu'avec un

import monscript

ça devrait être possible d'ensuite appeler tes fonctions

sinon je pense que c'est bien monscript qui possède une erreur. As-tu un lien vers ton fichier que tu as mis dans un repository ?

S'il est pas long tu peux le mettre ici (faisons simple : s'il fait moins de 100 lignes colle-le)

Ou même mieux : as-tu poser la question vers un forum spécialisé dans le python ou le développement (moi c'est ce que j'aurai fait) ?

Emrhys13 a écrit :

je voulais mettre un screenshot mais je n'ai pas trouvé comment faire.

C'est compliqué.
ce que je peux dire c'est que le forum attend une migration qui permettra d'être nettement plus ergonomique smile


Vive la communauté du Libre !!!

Hors ligne

#5 Le 10/05/2023, à 21:46

Vobul

Re : [Résolu] message : mon script python ne repond pas

Perso je pense qu'il ne répond pas car is s'appelle lui-même dans une boucle infinie.


Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM

Hors ligne

#6 Le 10/05/2023, à 21:50

iznobe

Re : [Résolu] message : mon script python ne repond pas

Bonjour , et si tu fais dans un terminal :

python3 /chemin/vers/ton/script.py

ca dis quoi ?
genre :

python3 /home/claude/monscript.py

Apres faudrait peut être voir le contenu de monscript.py , le problème est peut être là .

Dernière modification par iznobe (Le 10/05/2023, à 21:54)


retour utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .

Hors ligne

#7 Le 11/05/2023, à 00:07

Emrhys13

Re : [Résolu] message : mon script python ne repond pas

iznobe a écrit :

Bonjour , et si tu fais dans un terminal :

python3 /chemin/vers/ton/script.py

ca dis quoi ?
genre :

python3 /home/claude/monscript.py

Apres faudrait peut être voir le contenu de monscript.py , le problème est peut être là .

ca fonctionne bien.

en fait monscript.py est un script avec une interface graphique avec des boutons et chaque bouton lance un script enfant qui a lui aussi une interface graphique specifique.
quand je clique sur les boutons, les scripts enfants se lancent et fonctionnent bien mais après quelques secondes il apparait un popup qui dit que le script parent ne répond pas; c'est normal car le focus est sur le script enfant.
dès que je ferme l'interface du script enfant, le focus revient sur le script parent et le popup disparait de lui même.
ce que j’aimerai c'est que le script parent attende sans avoir ce popup.

très certainement le pb vient du lancement du script. je n'utilise certainement pas la bonne méthode mais je n'ai pas trouvé comment faire autrement.
quelle est la meilleure méthode pour lancer un script avec une interface graphique?

je ne peux pas utiliser import monscript  comme le propose Amiralgaby car l'interface du script enfant s'affiche immédiatement au lancement du script parent

Hors ligne

#8 Le 11/05/2023, à 00:11

Vobul

Re : [Résolu] message : mon script python ne repond pas

C'est un problème de lock du thread parent avec tk. J'avais moi aussi ce problème avec une app python GUI qui lançait une tâche en fond. Pendant l'exécution de la tâche, l'interface était non répondante. J'ai réglé le problème en changeant de métier.


Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM

Hors ligne

#9 Le 11/05/2023, à 09:06

Emrhys13

Re : [Résolu] message : mon script python ne repond pas

Vobul a écrit :

C'est un problème de lock du thread parent avec tk. J'avais moi aussi ce problème avec une app python GUI qui lançait une tâche en fond. Pendant l'exécution de la tâche, l'interface était non répondante. J'ai réglé le problème en changeant de métier.

OK Merci. j’espère que d'autres personnes auront une solution un peu plus technique big_smile

Hors ligne

#10 Le 11/05/2023, à 12:30

Vobul

Re : [Résolu] message : mon script python ne repond pas

En gros il faut que tu utilises les threads. Voir résultats d'une recherche : "python gui app tk thread".


Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM

Hors ligne

#11 Le 12/05/2023, à 17:38

Emrhys13

Re : [Résolu] message : mon script python ne repond pas

Bonjour,

j'ai fini par trouver la solution à mon problème.  avec subprocess.Popen il suffit d'ajouter l'argument shell=True et les popups gênants n'apparaissent plus.

ex: subprocess.Popen(["script.py"], shell=True)

en tout cas merci à tous ceux qui ont essayé de m'aider.

Hors ligne

#12 Le 12/05/2023, à 19:34

Vobul

Re : [Résolu] message : mon script python ne repond pas

Nan mais c'est complètement bizarre d'appeller un script python depuis un programme python en passant par le shell ! Mais bon si ça marche hein ! wink


Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM

Hors ligne