Ein Beispiel:

Code:
if strFunktion[0] == '0':           #Funktion in dualzahlen umwandeln
    strFunktionsbits = '00'
elif strFunktion[0] == '1':
    strFunktionsbits = '01'
elif strFunktion[0] == '2':
    strFunktionsbits = '10'
elif strFunktion[0] == '3':
   strFunktionsbits = '11'
else:
   print('Da ist ein Fehler bei der Umwandlung der Funktion (Schleife) aufgetreten. Bitte nur Ziffern 0,1,2,3 eingeben!')
Was tut der Code?
Wandelt die möglichen Subadressen 0-3 in die entsprechende Bitfolge um.

Was haben alle If-Zweige gemeinsam?
Wandeln die jeweilige Subadresse in eine Binärzahl um: 0 -> 00, 1 -> 01, 2 -> 10, 3 -> 11

Vereinfachung
Umwandlung der Subadresse in Binärzahl generalisieren.

Code:
if int(strFunktion) not in range(0, 4):
    raise Exception('Funktion muss zwischen 0 und 3 liegen!')    

strFunktionsbits = format(int(strFunktion), '02b')
Von 10 auf 3 Zeilen und deutlich übersichtlicher. :-)

Aber genug Programmiertips, ist ja schließlich kein Python-Forum hier.

Gruß Joachim