Widget PyQt connect () et disconnect ()

Selon les conditions, je tiens à vous connecter/re-connecter un bouton à une fonction différente.

Disons que j'ai un bouton:

myButton = QtGui.QPushButton()

Pour cet exemple, disons que je vérifie si il y a une connexion internet.

if connected == True:
    myButton.clicked.connect(function_A)

elif connected == False:
    myButton.clicked.connect(function_B)

Tout d'abord, je tiens à déconnecter un bouton à partir de n'importe quelle fonction il a déjà été connecté avant que le bouton est en train d'être ré-attribué/re-connecté à une autre fonction (function_A ou function_B).
Deuxièmement, j'ai déjà remarqué qu'après que le bouton est à nouveau connecté, il prend cliquez sur le bouton pour ramasser une nouvelle fonction. Après que le bouton est à nouveau connecté à une autre fonction, il tente toujours d'exécuter une fonction précédente - une fonction à laquelle un bouton a été connecté auparavant (avant une re-connexion). S'il vous plaît conseils. Merci à l'avance!

ÉDITÉ PLUS TARD:

Il apparaît un widget de .disconnect() méthode peut être utilisée pour déconnecter un bouton à partir d'une fonction, il est connecté.

myButton.disconnect()

Malheureusement .disconnect() renvoie une erreur si un widget n'est pas connecté à n'importe quelle fonction.
Pour la contourner, je suis en utilisant Try/except. Mais je préfère utiliser une solution plus élégante...

try: myButton.clicked.disconnect() 
except Exception: pass

source d'informationauteur alphanumeric