Привет всем, поэтому у меня есть этот кусок кода в Python 3:
def spss_script_3tests (dictionary):
inv_test_dict = {v: k for k , v in dictionary.items()}
for i in excel_log_absent['Pupil\nID/Barcode ']:
pupil_id=(i.split('-'))[2]
test_no=(i.split('-'))[1]
#index in spss data of pupil id
spss_pid_index=spss_pupilid.index[spss_pupilid[('PupilID',)] == pupil_id].tolist()
# if t1 name in spss = t1 number in excel using dictionary
if (spss_pupilid[('T1name',)][spss_pid_index] == dictionary[test_no]).iloc[0]:
print('if PupilID = ',"'",pupil_id,"'",' Attendlog1 = 1',sep='')
print('if PupilID = ',"'",pupil_id,"'",' testnum1 = ',test_no,sep='')
else:
print('if PupilID = ',"'",pupil_id,"'",' Attendlog2 = 1',sep='')
print('if PupilID = ',"'",pupil_id,"'",' testnum2 = ',inv_test_dict[spss_pupilid[('T2name',)][spss_pid_index[0]]],sep='')
else:
много бесполезной информации, но последний else:
отмечает синтаксическую ошибку, и я понятия не имею, почему. Насколько я знаю, все отступы должны быть записаны, каждый (
и [
учитывается, и оператор print там работает нормально, но условие (иначе, если, while) - нет.
Любая помощь будет очень оценена