“else if”的正确语法是什么?
- 2025-04-15 09:20:00
- admin 原创
- 84
问题描述:
我是一名 Python 新手,正在从 2.6.4 升级到 3.1.1。之前一切正常,直到我尝试使用“else if”语句。解释器在“else if”中的“if”后面报了一个语法错误,原因我似乎不明白。
def function(a):
if a == '1':
print ('1a')
else if a == '2'
print ('2a')
else print ('3a')
function(input('input:'))
我可能遗漏了一些非常简单的东西;然而,我自己还无法找到答案。
解决方案 1:
在 Python 中,“else if” 拼写为“elif”。另外,在和
后面需要一个冒号。elif
`else`
一个简单的问题,简单的回答一下。我刚开始的时候(最近几周)也遇到了同样的问题。
所以你的代码应该是:
def function(a):
if a == '1':
print('1a')
elif a == '2':
print('2a')
else:
print('3a')
function(input('input:'))
解决方案 2:
你的意思是elif
?
解决方案 3:
def function(a):
if a == '1':
print ('1a')
elif a == '2':
print ('2a')
else:
print ('3a')
解决方案 4:
自古以来,if/else if
Python 中 的正确语法是elif
。顺便说一句,如果你有很多if/else
.eg
d={"1":"1a","2":"2a"}
if not a in d: print("3a")
else: print (d[a])
对于 msw,使用字典执行函数的示例。
def print_one(arg=None):
print "one"
def print_two(num):
print "two %s" % num
execfunctions = { 1 : (print_one, ['**arg'] ) , 2 : (print_two , ['**arg'] )}
try:
execfunctions[1][0]()
except KeyError,e:
print "Invalid option: ",e
try:
execfunctions[2][0]("test")
except KeyError,e:
print "Invalid option: ",e
else:
sys.exit()
解决方案 5:
def function(a):
if a == '1':
print ('1a')
else if a == '2'
print ('2a')
else print ('3a')
应更正为:
def function(a):
if a == '1':
print('1a')
elif a == '2':
print('2a')
else:
print('3a')
可以看到,else if 应该改为 elif,'2' 后面应该有冒号,else 语句后面应该有一个新行,并且 print 和括号之间的空格应该关闭。
解决方案 6:
以下是对您的函数的一点重构(它不使用“else”或“elif”):
def function(a):
if a not in (1, 2):
a = 3
print(str(a) + "a")
@ghostdog74:Python 3 要求“print”使用括号。
相关推荐
热门文章
项目管理软件有哪些?
热门标签
曾咪二维码
扫码咨询,免费领取项目管理大礼包!
云禅道AD