[英]Syntax Error Python: 'return outside function'
尝试在 python 中使用 function 以小时和分钟返回时间......返回语句不断出现错误
def return_time(hour, minutes):
time = ""
if hour < 10:
time += "0" + str(hour)
else:
time += str(hour)
time += ":"
if minutes < 10:
time += "0" + str(minutes)
else:
time += str(minutes)
return time
由于 Python 不像其他一些语言(C++、Java 等)那样使用方括号/大括号来跟踪块,因此它对缩进非常讲究。 您的代码编写方式,整个return_time()
是
def return_time(hour, minutes):
time = ""
因为之后的下一行是非缩进的。 这是一个简单的修复。
def return_time(hour, minutes):
time = ""
if hour < 10: # stay indented!
time += "0" + str(hour)
else:
time += str(hour)
time += ":"
if minutes < 10:
time += "0" + str(minutes)
else:
time += str(minutes)
return time
此外,正如@IronMan 评论的那样,这个特殊的 function 很容易用 f 字符串在一行中实现。
def return_time(hour, minutes):
return f"{hour:02d}:{minutes:02d}"
f 字符串(由引号前的f
表示)计算大括号内和:
之前的变量,并将其转换为字符串。 :
后面的文本描述了格式,在这种情况下是“正好两位数,如果少于两位数,则前面加一个 0”。
您可能还对time.strftime()
感兴趣。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.