Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การสร้างสตริงสุ่มจนกว่าจะสร้างสตริงที่กำหนดโดยใช้Python


เมื่อมีสตริง หน้าที่ของเราคือสร้างสตริงโดยใช้การผสมอักขระ อักขระพิเศษ ตัวเลข ฯลฯ แบบสุ่ม

ตัวอย่าง

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) สำหรับ i ในช่วง (len (t)))my_attemptNext =''com =Falseiteration =0# วนซ้ำในขณะที่เสร็จสิ้นเป็น falsewhile com ==False:print(my_attemptThis) my_attemptNext =''com =True สำหรับฉันในช่วง (len (t)):ถ้า my_attemptThis [i] !=t[i]:com =Falsemy_attemptNext +=random.choice(my_possibleCharacters)else:my_attemptNext +=t[i]# เพิ่มการวนซ้ำ +=1my_attemptThis =my_attemptNexttime.sleep(0.1)# Driver Codeprint ("String จับคู่หลังจาก " + str(การวนซ้ำ) + " การวนซ้ำ")

ผลลัพธ์

36GsM,Ljtg1FNuR;WJa3n4oGlkYNRoRNwLgJtOdwNz0J3a9JsFvg6HOIaABXaOX:NWoDpf;ttkfErInoubDTa0aHaWaa8aiaxazaNaJaha0a.aqaraxaRing ที่ตรงกัน