주어진 문자열에서 우리의 임무는 임의의 문자, 특수 문자, 숫자 등의 조합을 사용하여 일부 문자열을 생성하는 것입니다.
예
InputPPOutputAKAK.....
알고리즘
1단계:문자열을 입력합니다.2단계:여기에 소문자, 대문자 및 특수 문자의 가능한 모든 조합을 변수에 저장합니다.3단계:두 개의 루프를 사용하고 임의 함수를 사용합니다. 이로부터 문자, 기호의 가능한 모든 조합을 얻을 수 있습니다. 4단계:마지막에 입력 문자열과 동일한 문자열을 표시하고 주어진 입력 문자열과 각 임의의 문자열과 일치시킵니다. 5단계:두 인덱스 값이 같으면 다음 인덱스를 저장하고 나머지에 대해 반복합니다.
예시 코드
가져오기 stringimport randomimport timemy_possibleCharacters =string.ascii_lowercase + string.digits + string.ascii_uppercase + ' ., !?;:'t ="ab"my_attemptThis =''.join(random.choice(my_possibleCharacters)for i in range (len(t)))my_attemptNext =''com =Falseiteration =0# 완료되는 동안 반복이 false인 동안 com ==False:print(my_attemptThis)my_attemptNext =''com =Truefor i in range(len(t)):if my_attemptThis [i] !=t[i]:com =Falsemy_attemptNext +=random.choice(my_possibleCharacters)else:my_attemptNext +=t[i]# 반복 반복 증가 +=1my_attemptThis =my_attemptNexttime.sleep(0.1)# 드라이버 코드 인쇄("문자열 " + str(iteration) + " iterations" 이후에 일치)
출력
36GsM,Ljtg1FNuR;WJa3n4oGlkYNRoRNwLgJtOdwNz0J3a9JsFvg6HOIaABXaOX:NWoDpf;ttkfErInoubDTa0aHaWaa8aiaxazaNaJarasaha0a;Laaqaaaqaaabada0aHaWaa5aaQaaqa