Ich habe letztens ein Programm geschrieben.jetzt möchte ich dieses Programm in eine Klasse umwandeln.Wenn ich aber einfach eine Klasse davorsetze , alles einrücke und bei den(der) Funktion ein self einbaue kommt trotzdem eine Fehlermeldung. Ich bin kein Python Profi (eher ein Anfänger ), deshalb könnte es sein das mein Programm etwas unübersichtlich / schlecht geschrieben ist.
Code: Alles auswählen
class Brain():
import random
counter = 0
random_helper = []
helper_variable = 0
password = ""
generator_list = []
generated_list_letters = []
generated_list_numbers = []
generated_list_sc = []
#sc = special character
list_letters = ["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]
list_numbers = [1,2,3,4,5,6,7,8,9,0]
list_sc = ["!","§","$","%","&","/","(",")","=","?","#"]
def start_generating(self,bool_numbers = True, bool_letters = True , bool_sc = True , password_length = 12):
while counter < password_length:
generated_list_letters.append(random.choice(list_letters))
generated_list_numbers.append(random.choice(list_numbers))
generated_list_sc.append(random.choice(list_sc))
if counter == 0 :
if bool_letters == True:
random_helper.append(1)
if bool_numbers == True:
random_helper.append(2)
if bool_sc == True:
random_helper.append(3)
counter_twin = counter
#print(counter_twin)
helper_variable = random.choice(random_helper)
if helper_variable == 1 and bool_letters == True:
generator_list.append(generated_list_letters[counter])
if helper_variable == 2 and bool_numbers == True:
generator_list.append(str(generated_list_numbers[counter]))
if helper_variable == 3 and bool_sc == True:
generator_list.append(generated_list_sc[counter])
global counter
counter = counter +1
if counter == password_length:
password = " " .join(generator_list)
print(password.replace(" ",""))
start_generating(bool_numbers = True, bool_letters = True , bool_sc = True ,password_length = 12)
#print(generated_list_letters)
#print(generated_list_numbers)
#print(generated_list_sc)
#print(generator_list)
print(password)