Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python语法错误,不确定如何编写代码_Python - Fatal编程技术网

python语法错误,不确定如何编写代码

python语法错误,不确定如何编写代码,python,Python,我正在尝试编写一个测试单词是否为回文的代码。它正在工作,但在给出正确答案之前,它会在循环中打印NO。我希望它只打印一次正确的答案 我什么都没做,只是上网查了一下答案 x = str(input("enter the word:")) w = "" for i in x: w = i + w if x == w: print("YES") else: print("NO") 它应该打印一次是或否,现在在给出正确答案之前打印多次

我正在尝试编写一个测试单词是否为回文的代码。它正在工作,但在给出正确答案之前,它会在循环中打印NO。我希望它只打印一次正确的答案

我什么都没做,只是上网查了一下答案

x = str(input("enter the word:"))

w = "" 

for i in x: 
    w = i + w 
    if x == w: 
        print("YES") 
    else:
        print("NO")

它应该打印一次是或否,现在在给出正确答案之前打印多次。

缩进w=i+w行

x = str(input("enter the word:"))

w = "" 

for i in x: 

  w = i + w 

if (x==w): 
    print("YES") 
else:
    print("NO")

请纠正压痕,以便排除故障


乍一看,您的“if”语句嵌套在“for”循环中,因此在添加每个字母后检查回文

如果将If-else放在循环中,则必然会多次打印结果。让它远离循环,它只会打印一次。

欢迎来到社区

较短的方法可以是:`

x = str(input("enter the word:"))
if (x==x[::-1]): 
    print("YES") 
else:
    print("NO")

您可能想研究python中的字符串切片:

Mark B已经解决了您的问题,但这里有一个额外的方法,不感兴趣

word = input("Enter word")

reverse = word[::-1]

if word == reverse:
    print("Yes, plaindrome")
else:
    print("No, not palindrome")

使用for循环创建与字符串x相反的新字符串。在for循环外部使用条件。另外,检查大写输入

请修正你的缩进。