This is an extraction of a library which I’ve coded personally:
def _batch(self, requests):
body = {
'requests': requests
}
return self._service.spreadsheets().batchUpdate(spreadsheetId=self.spreadsheetId, body=body).execute()
def renameSheet(self, sheetId, newName):
return self._batch({
"updateSheetProperties": {
"properties": {
"sheetId": sheetId,
"title": newName,
},
"fields": "title",
}
})
I think that with a little effort, you can implement it into your code and obtain what you want.
In order to make the batchUpdate call, you will need the spreadsheetId as well as the initialized service as explained in the Python QUickstart – Google Sheet API