Computer >> Máy Tính >  >> Lập trình >> Python

Kiểm tra xem cả hai nửa của chuỗi có cùng một bộ ký tự trong Python hay không

Chúng ta có thể tách một đoạn dây dài ở giữa và kiểm tra xem hai nửa dây có bằng nhau hay không. Chuỗi đầu vào có thể có một số ký tự lẻ hoặc chẵn. Nếu nó có một số ký tự chẵn, chúng tôi chia hai nửa bằng cách lấy một nửa chiều dài. Nhưng nếu số ký tự là số lẻ thì chúng tôi bỏ qua ký tự ở giữa và sau đó so sánh hai nửa còn lại.

Trong chương trình dưới đây, chúng tôi tạo hai nửa của chuỗi đầu vào với logic ở trên và sau đó

Ví dụ

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)

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

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