在python中运行以下程序时出错
在python中运行以下程序时出错在python中运行以下程序时出错,python,syntax,Python,Syntax,在python中运行以下程序时出错 data = read_data() batsman_name = first_batsman(data) def first_batsman(data=data): innings = data['innings'][0] first_innings = innings['1st innings'] deliveries = first_innings['deliveries'] first_ball =(deliveries[0] [0.1]) f
data = read_data()
batsman_name = first_batsman(data)
def first_batsman(data=data):
innings = data['innings'][0]
first_innings = innings['1st innings']
deliveries = first_innings['deliveries']
first_ball =(deliveries[0] [0.1])
first_batsman = first_ball['batsman']
return(first_batsman)
print(first_batsman)
将错误获取为:
返回(第一击球员)^
缩进错误:意外缩进 我甚至尝试了以下程序:
data = read_data()
batsman_name = first_batsman(data)
def first_batsman(data=data):
innings = data['innings'][0]
first_innings = innings['1st innings']
deliveries = first_innings['deliveries']
first_ball =(deliveries[0] [0.1])
first_batsman = first_ball['batsman']
return(first_batsman)
print(first_batsman)
但仍然会出现以下错误:
返回(第一击球员)SyntaxError:函数外部的“return”
解决这个问题的办法是什么?我认为你误解了意图: 对于您的代码,您可能希望尝试以下操作:
class First_Batsman( object ) :
def __init__( self ):
self.innings = data['innings'][0]
self.first_innings = innings['1st innings']
self.deliveries = first_innings['deliveries']
self.first_ball = deliveries[0][0.1]
self.first_batsman = first_ball['batsman']
def __str__(self):
return str(self.innings,self.first_innings,self.deliveries,
self.first_ball,self.first_batsman)
data = read_data()
batsman_name = first_batsman( data )
print( first_batsman )
解决方案是只在函数内部使用
return
(并确保它相对于它所在的作用域正确缩进)。首先,你想在函数内部使用的所有东西都必须缩进,包括return()
。所以first_initings=…
向Python发出信号,表示函数的结尾在它上面,因为它没有缩进。@Harsha你在说什么?只要在函数中,就可以从任何位置返回值。