python - 语法错误,初级 Python 2.7 代码

标签 python python-2.7 syntax-error

这里是代码的极端初学者。阅读 John V. Guttag 撰写的“使用 Python 进行计算和编程简介”。第一个问题是:

“编写一个程序来检查三个变量 — x、y 和 z — 并打印其中最大的奇数。如果它们都不奇怪,那么 应该打印一条消息来说明这一点。”

我想出的代码在第 5、7 和 9 行有一个语法错误。由于我是一个完全的初学者,所以我无法弄清楚。欢迎咨询!

FirstNumber=int(input("Enter First Number:"))  
SecondNumber=int(input("Enter Second Number:"))  
ThirdNumber=int(input("Enter Third Number:"))  

if (FirstNumber%2!=0:) and (FirstNumber > SecondNumber and FirstNumber > ThirdNumber)  
  print 'First Number is largest odd -> '+str(FirstNumber)  
elif (SecondNumber%2!=0:) and (SecondNumber > FirstNumber and SecondNumber > ThirdNumber)  
  print 'Second Number is largest odd -> '+str(SecondNumber)  
elif (ThirdNumber%2!=0:) and (ThirdNumber > FirstNumber and ThirdNumber > SecondNumber)  
  print 'Third Number is largest odd -> '+str(ThirdNumber)  
else:   
  print 'None are odd -> '+str(FirstNumber), str(SecondNumber), str(ThirdNumber)   

最佳答案

如注释中所述,您的代码在每个 ifelif 语句末尾缺少冒号。此外,您的代码在第一个条件测试中包含无关的冒号(即 (FirstNumber%2!=0:)

此外,正如您提到的,您是初学者,一些关于简化代码...或提高可读性的建议...

firstNum = int(input("Enter First Number: "))  
secondNum = int(input("Enter Second Number: "))  
thirdNum = int(input("Enter Third Number: "))  


# In this case, we don't need the parenthesis. (Sometimes parens are
# required to ensure that the logic works correctly, but in this case,
# we don't.) Python short circuits, meaning it will stop the If 
# statement mid-way as soon as a conditional statement equivocates to False.

if firstNum % 2 != 0 and firstNum > secondNum and firstNum > thirdNum:  
    print 'First Number is largest odd -> ' + str(firsthirdNum)  
elif secondNum % 2 != 0 and secondNum > firstNum and secondNum > thirdNum:  
    print 'Second Number is largest odd -> ' + str(secondNum)  
elif thirdNum % 2 != 0 and thirdNum > firstNum and thirdNum > secondNum: 
    print 'Third Number is largest odd -> ' + str(thirdNum)  
else:   
    print 'None are odd -> ' + str(firstNum), str(secondNum), str(thirdNum)

关于python - 语法错误,初级 Python 2.7 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48269790/

相关文章:

python - Scikit-learn f1_score 用于字符串列表

从 mysql 检索时的 Python 编码

python - PyQt4 QPushButton 文本和图标对齐

python-2.7 - 如何找到shortest_path中的特定点/坐标?

excel - 选择具有变量名称的属性

python - 在 Python 中修复损坏的 HTML - Beautifulsoup 不工作

python - shell的&&和||在 python

python - 使用 python 将 XLSX 正确转换为 CSV

java - 不常用的 Java 语法 (JavaParser)?

MySQL 查询在 Navicat 中有效,但在其他地方生成 MySQL 语法错误