Python程序:检查字符串是否对称或回文

Python程序:检查字符串是否对称或回文

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

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

更多Python相关文章,请阅读:Python 教程

示例

下面是一个演示例子 –

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("所输入的字符串为回文")
   else:
      print("所输入的字符串不是回文")
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("所输入的字符串为对称")
   else:
      print("所输入的字符串不是对称")
my_string = 'phphhphp'
print("正在调用检查回文的方法...")
check_palindrome(my_string)
print("正在调用检查对称的方法...")
check_symmetry(my_string)

输出

正在调用检查回文的方法...
所输入的字符串为回文
正在调用检查对称的方法...
所输入的字符串不是对称

解释

  • 定义了一个名为“check_palindrome”的方法,它以字符串作为参数。
  • 通过使用2的地板除法,计算出中间值。
  • 将开始值赋为0,将结束值赋为最后一个元素。
  • 将一个名为flag的变量赋为0。
  • 开始一个while条件,如果起始和结束元素相等,则增加开始值并递减结束值。
  • 否则,将flag变量赋为1,并退出循环。
  • 如果标志的值为0,则字符串将为回文,否则不是。
  • 定义另一个名为“check_symmetry”的方法,它以字符串作为参数。
  • 将字符串长度分配给一个变量。
  • 如果长度的余数不为0,则中间值会更改。
  • 开始和中间值再次更改。
  • 再次使用“while”条件,开始值再次更改。
  • 如果标志值为0,则认为该字符串具有对称性。
  • 否则没有。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程