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

ตรวจสอบว่าครึ่งส่วนของสตริงมีชุดอักขระเหมือนกันใน Python . หรือไม่


เราสามารถแยกสายยาวออกจากตรงกลางและตรวจสอบว่าทั้งสองส่วนเท่ากันหรือไม่ สตริงอินพุตอาจมีอักขระเป็นเลขคี่หรือคู่ หากมีจำนวนอักขระเป็นเลขคู่ เราจะแบ่งครึ่งทั้งสองส่วนโดยใช้ความยาวครึ่งหนึ่ง แต่ถ้าจำนวนอักขระเป็นเลขคี่ เราจะเพิกเฉยต่ออักขระที่อยู่ตรงกลางสุดแล้วเปรียบเทียบสองส่วนที่เหลือ

ในโปรแกรมด้านล่าง เราสร้างสองส่วนของอินพุตสตริงด้วยตรรกะด้านบน จากนั้น

ตัวอย่าง

from collections import Counter
def comparehalves(input_string):
   str_len = len(input_string)
# If number of characyes is odd
# ignore the middle character
   if (str_len % 2 != 0):
      left = input_string[0:int(str_len / 2)]
      right = input_string[(int(str_len / 2)) + 1:]
   else:
      left = input_string[0:int(str_len / 2)]
      right = input_string[int(str_len / 2):]
# Convert the halves into lists
# and sort them
   l1 = list(left)
   l1.sort()
   l2 = list(right)
   l2.sort()
   if l1 == l2:
      print ("Same character in both halves")
   else:
      print ("Both halves are different ")
in_string = input("Enter String: ")
comparehalves(in_string)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

# Run1
Enter String: Tutorials
Both halves are different
# Run2
Enter String: TutTut
Same character in both halves