У меня есть следующий код:
import pymysql.cursors
class MylocalSQL:
def __init__(self):
pass
def get_max_report_date(self):
connection = pymysql.connect(host=...,
charset='utf8mb4',
cursorclass=pymysql.cursors.DictCursor)
try:
with connection.cursor() as cursor:
# Read a single record
sql = "SELECT value from tab limit 1 "
cursor.execute(sql)
result = cursor.fetchone()
print(result)
finally:
connection.close()
if __name__ == '__main__':
mysql = MylocalSQL()
mysql.get_max_report_date()
Я хочу изменить print(result)
на return
, чтобы я мог сделать:
value = mysql.get_max_report_date()
Однако, если я изменю print(result)
на return result
, блок finally не будет выполнен.
Есть ли лучший способ управлять ошибками подключения и обработки, когда можно вернуть значение из запроса?