萌新求助!第十九讲题目
本帖最后由 KAKA学python 于 2021-2-8 00:38 编辑编写一个函数,判断传入的字符串参数是否为“回文联”(回文联即用回文形式写成的对联,既可顺读,也可倒读。例如:上海自来水来自海上)
程序执行结果如图:
def judge():
temp = input('请输入一句话:',)
q =
length = len(temp)
for x in range (length):
for y in range (length):
if x+y == (length)-1:
if q == q:
print('是回文联')
else:
print('不是回文联')
judge()
想知道我个程序运行的时候为什么会报错,该如何修改。 逻辑混乱,不知道你这些代码放在一起想表达啥 鉴于python的一些特性
回文判断使用切片是最优方案
temp = input('请输入一句话:')
if temp==temp[::-1]:
print("回文")
else:
print("非") 如果非要用函数的话,也不建议再函数体内使用输入输出语句
比如:
def judge(sstr):
b=0
e = len(sstr)-1
flag=1
while b<=e:
if temp!=temp:
flag=0
break
b+=1
e-=1
return flag
temp = input('请输入一句话:')
if judge(temp):
print("回文")
else:
print("非")
如果一定要按你的思路可以这样写:
def judge():
temp = input('请输入一句话:')
#q = #没有意义的语句 可以去掉
length = len(temp)
flag=1#设置标志位 是一定的
for x in range (length//2+1):
if temp !=temp:
flag=0
break
if flag:
print("回文")
else:
print("非")
judge()
wp231957 发表于 2021-2-8 08:47
如果一定要按你的思路可以这样写:
好的好的理解了!!非常感谢 wp231957 发表于 2021-2-8 08:47
如果一定要按你的思路可以这样写:
这也太帅了
页:
[1]