Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 19.09.2018, 07:49   #1
Danil_lll
Новичок
 
Регистрация: 19.09.2018
Сообщений: 3
Репутация: 10
По умолчанию Возврат 3-х и более переменных из функции

Всем доброго времени суток.
Есть COM-библиотека, которую вызываю в Python через: win32com.client. Сама COM-библиотека написана на С++. Т.е. в ней есть такие функци, которые могут возвращать 2 и более переменных.
Вот например функция, в которую отправим 6 параметров, 3 из которых вернутся с новым значением:
Код:

STDMETHODIMP Hybrid::Verify(BSTR alias, BSTR inData, BSTR inSign, BSTR* outData, BSTR* outVerifyInfo, BSTR* outCert)
{
    ..............................................
    return S_OK;
}


Когда же на выход был один параметр:
Код:

STDMETHODIMP Hybrid::GetLastError(ULONG* rv)
{
    .......................................
    return S_OK;
}

на Python-е я использовал простое присваивание:
Код:

 err = Hybrid.GetLastError()



А вот как получить с таких функций сразу 2,3,4 и более параметров?

Пробовал вот так! Не работает…
Код:

 outData, outVerifyInfo, outCert  = Hybrid.Verify(" ", inD, inS)


p.s. Стоит Python 3.7
Danil_lll вне форума   Ответить с цитированием
Старый 19.09.2018, 08:02   #2
Aleksandr H.
2 the Nation Glory
Профессионал
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Адрес: Wild West Ukraine
Сообщений: 2,436
Репутация: 885

skype: aleksandr.gryb
По умолчанию

Tuples? https://stackoverflow.com/questions/...lues-in-python
__________________
Mailto: media.project@ukr.net
Aleksandr H. вне форума   Ответить с цитированием
Старый 19.09.2018, 08:10   #3
Danil_lll
Новичок
 
Регистрация: 19.09.2018
Сообщений: 3
Репутация: 10
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
Я не могу отредактировать функции в библиотеке.
Так как они не возвращаются через RETURN, то получается надо эти параметры, как и в Си, как-то через "&" или "out" возвращать... А вот как...?)
Danil_lll вне форума   Ответить с цитированием
Старый 19.09.2018, 09:20   #4
Danil_lll
Новичок
 
Регистрация: 19.09.2018
Сообщений: 3
Репутация: 10
По умолчанию

Разобрался, спасибо
Danil_lll вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Возврат локальных переменных coNsept Assembler 6 09.12.2011 02:02
Возврат 2 и более аргументов из функции. Drilla Microsoft Office Excel 2 18.09.2011 14:11
c++ возврат указателя из функции Neolit1819 Помощь студентам 6 28.03.2011 15:37
Мини бэйсик:объявление функции, вызов функции , возврат. AL_LORD Помощь студентам 2 14.10.2010 17:48
Возврат переменных из цикла и функций %$PROregRAMi$t% PHP 8 31.08.2010 05:22


13:21.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru