Python程序检查字符串是对称的还是回文的

当需要检查字符串是对称的还是回文时,可以定义一种使用“while”条件的方法。定义了另一种方法来检查对称性,它也使用 'while' 和 'if' 条件。

回文是一个数字或字符串,从左到右或从右到左读取时是相同的值。索引值相同。

示例

以下是相同的演示 -

def check_palindrome(my_str):

   mid_val = (len(my_str)-1)//2

   start = 0

   end = len(my_str)-1

   flag = 0

   while(start<mid_val):

   if (my_str[start]== my_str[end]):

      start += 1

      end -= 1

   else:

      flag = 1

      break;

   if flag == 0:

      print("The entered string is palindrome")

   else:

      print("The entered string is not palindrome")

def check_symmetry(my_str):

   n = len(my_str)

   flag = 0

   if n%2:

      mid_val = n//2 +1

   else:

      mid_val = n//2

   start_1 = 0

   start_2 = mid_val

   while(start_1 < mid_val and start_2 < n):

      if (my_str[start_1]== my_str[start_2]):

         start_1 = start_1 + 1

         start_2 = start_2 + 1

      else:

         flag = 1

         break

   if flag == 0:

      print("The entered string is symmetrical")

   else:

      print("The entered string is not symmetrical")

my_string = 'phphhphp'

print("正在调用检查回文的方法...")

check_palindrome(my_string)

print("正在调用检查对称性的方法...")

check_symmetry(my_string)

输出结果
正在调用检查回文的方法...

The entered string is palindrome

正在调用检查对称性的方法...

The entered string is not symmetrical

解释

  • 定义了一个名为“check_palindrome”的方法,它接受一个字符串作为参数。

  • 中间值是通过用 2 进行楼层划分来计算的。

  • 起始值分配为 0,结束值分配给最后一个元素。

  • 一个名为 flag 的变量被赋值为 0。

  • while 条件开始,如果开始和结束元素相等,则开始值增加,结束值减少。

  • 否则,标志变量被赋值为 1,并跳出循环。

  • 如果 flag 的值为 0,则字符串将是回文,否则不是。

  • 定义了另一个名为“check_symmetry”的方法,它将字符串作为参数。

  • 字符串的长度分配给一个变量。

  • 如果长度和 2 的余数不为 0,则更改中间值。

  • 开始和中间值再次更改。

  • 使用另一个“while”条件,并再次更改起始值。

  • 如果 flag 的值为 0,则认为该字符串是对称的。

  • 否则不行。

以上是 Python程序检查字符串是对称的还是回文的 的全部内容, 来源链接: utcz.com/z/361090.html

回到顶部