Проблемы с __future__ и swagger_client в Python - PullRequest
0 голосов
/ 30 мая 2018

Документация Strava API содержит следующий пример кода, который я скопировал и ввел свой собственный токен доступа и идентификатор клуба:

from __future__ import print_statement
import time
import swagger_client
from swagger_client.rest import ApiException
from pprint import pprint

# Configure OAuth2 access token for authorization: strava_oauth
swagger_client.configuration.access_token = 'MY_ACCESS_TOKEN'

# create an instance of the API class
api_instance = swagger_client.ClubsApi()
id = MY_CLUB_ID # Integer | The identifier of the club.
page = 56 # Integer | Page number. (optional)
perPage = 56 # Integer | Number of items per page. Defaults to 30.     (optional) (default to 30)

try:
    # List Club Activities
    api_response = api_instance.getClubActivitiesById(id, page=page, perPage=perPage)
    pprint(api_response)
except ApiException as e:
    print("Exception when calling ClubsApi->getClubActivitiesById: %s\n" % e)

Я пытаюсь запустить его, я получаю

from __future__ import print_statement
SyntaxError: future feature print_statement is not defined

Я также вижу, что получу то же самое с моим swagger_client импортом.Я пытался установить пакеты для каждого, но это не имело никакого значения.Я читал, что для __future__ я должен быть на> Python 2.7, но в настоящее время я использую 3.6.

Как мне решить эту проблему?

1 Ответ

0 голосов
/ 30 мая 2018

1) Первая строка содержит опечатку

from __future__ import print_statement
                             ^^^

, это должно быть

from __future__ import print_function

Но так как вы используете Python 3, вам на самом деле не нужен этот импорт - смотрите это Q & A для подробностей.

2) swagger_client, вероятно, клиент Python, сгенерированный из определения Strava OpenAPI .Похоже, вам нужно сгенерировать его вручную с помощью Swagger Codegen.Есть несколько способов сделать это:

...