เมื่อจำเป็นต้องค้นหาสตริงย่อยขนาด N ที่มีอักขระ K ต่างกัน ระบบจะกำหนดเมธอดที่ใช้พารามิเตอร์สามตัวและใช้เงื่อนไข "if" เพื่อส่งคืนสตริงที่ต้องการ
ตัวอย่าง
ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน
def generate_my_string(string_size, substring_size, distinct_chars):
my_string = ""
count_1 = 0
count_2 = 0
for i in range (string_size):
count_1 += 1
count_2 += 1
if (count_1 <= substring_size):
if (count_2 <= distinct_chars):
my_string = my_string + chr(96 + count_1)
else:
my_string = my_string + 'a'
else:
count_1 = 1
count_2 = 1
my_string = my_string + 'a'
return my_string
my_string_size = 8
my_substring_size = 6
K_distinct_chars = 4
print("The string size is :")
print(my_string_size)
print("The substring size is :")
print(my_substring_size)
print("The distinct characters count is :")
print(K_distinct_chars)
print("The resultant string is :")
print(generate_my_string(my_string_size, my_substring_size, K_distinct_chars)) ผลลัพธ์
The string size is : 8 The substring size is : 6 The distinct characters count is : 4 The resultant string is : abcdaaab
คำอธิบาย
-
มีการกำหนดเมธอดที่ชื่อ 'generate_my_string' ซึ่งใช้ขนาดสตริง ขนาดสตริงย่อย และอักขระที่แตกต่างกันเป็นพารามิเตอร์
-
มีการกำหนดสตริงว่าง
-
ค่าจำนวนเต็มสองค่าเริ่มต้นเป็น 0
-
ขนาดสตริงถูกทำซ้ำ และค่าจำนวนเต็มสองค่าจะเพิ่มขึ้น
-
หากค่าจำนวนเต็มแรกน้อยกว่าหรือเท่ากับขนาดของสตริงย่อย อักขระจะถูกแปลงเป็นอักขระอื่น
-
มิฉะนั้น จะต่อด้วยตัวอักษร 'a'
-
มิฉะนั้น ตัวแปรจำนวนเต็มสองตัวจะถูกกำหนดให้เป็น 1
-
สตริงนี้ถูกส่งกลับเป็นเอาต์พุต
-
นอกเมธอด จะมีการกำหนดขนาดสตริง ขนาดสตริงย่อย และจำนวนอักขระที่แตกต่างกัน
-
ค่าเหล่านี้จะแสดงบนคอนโซล
-
วิธีการนี้ถูกเรียกโดยการส่งผ่านพารามิเตอร์เหล่านี้
-
เอาต์พุตจะแสดงบนคอนโซล