|
0 / 0 / 0
Регистрация: 12.12.2019
Сообщений: 26
|
|
ctypes & numpy12.12.2019, 10:34. Показов 1925. Ответов 5
Доброе утро!
Я новичок в Python'e и мне нужно ускорить код для работы с матрицами Numpy. Я так понял что в библиотеке Numpy есть специальные методы для работы с ctypes, но не могу нормально разобраться. Объясните как передать матрицу в си код и из си получить новую матрицу. Если можете, напишите самый простейший пример в котором в Python создается массив Numpy [[1, 2], [3, 4]], она передается через ctypes в код си, который увеличивает на 1 каждый элемент. Новая матрица передается в Python который выводит новую матрицу. Заранее спасибо и просьба не закидывать меня фразами типа "документация в помощь" )
0
|
|
| 12.12.2019, 10:34 | |
|
Ответы с готовыми решениями:
5
query='SELECT * FROM resume WHERE ' & ''' & RecSet('place')& ''' & '=' & '''& s_loc &''' & - что не так? error '80020009' Îøèáêà. /lalala/profile.asp, line 28 Помогите найти драйвера для pci\ven_8086&DEV_266E&SUBSYS_A002145&REV_05\3&13C0B0C5&0&F2 |
|
|
||||||||||||||||
| 12.12.2019, 12:11 | ||||||||||||||||
Сообщение было отмечено dj_jd как решение
Решение
Ну, можно не в документацию, можно в гугль
Ибо гугль выдаёт сразу (ссылк кинуть не могу)
Есть способ посложнее, но в итоге удобнее. Подготовка - указываем питоновской программе сишную сигнатуру:
1
|
||||||||||||||||
|
0 / 0 / 0
Регистрация: 12.12.2019
Сообщений: 26
|
|||||||||||
| 12.12.2019, 22:46 [ТС] | |||||||||||
|
Код работает, но я немного туплю и не могу его запустить для массивов int. Можете написать полный код (на си и python) чтобы из массива numpy [[1, 2], [3, 4]] получить массив [[3, 4], [5, 6]]. Когда я пытаюсь это сделать, он выводит ошибку ctypes.ArgumentError: argument 1: <class 'TypeError'>: array must have data type int32
вот код:
0
|
|||||||||||
|
0 / 0 / 0
Регистрация: 12.12.2019
Сообщений: 26
|
|
| 13.12.2019, 16:43 [ТС] | |
|
По ходу работы возник новый вопрос. Я смог нормально запустить код си с помощью ctypes и спокойно работать с массивами numpy. Но в функции много вычислительных моментов и она сильно проседала по времени, когда я писал ее на python. Поэтому я переписал ее на си и использовал ctypes. Но почему-то код компилируется опять очень долго (хотя если компилировать похожий код с похожими алгоритмами на чистом си, то все летает). Разве использование ctypes не ускоряет код на Python? Или он просто позволяет запускать модули на си и нет никакого ускорения?
0
|
|
|
|
||
| 13.12.2019, 18:16 | ||
|
dj_jd,
1
|
||
| 13.12.2019, 18:16 | |
|
Помогаю со студенческими работами здесь
6
Нужен драйвера, код PCI\VEN_1039&DEV_7012&SUBSYS_0C98105B&REV_A0\3&B1BFB68&0&17 Мультимедиа контролер PCI\VEN_14F1&DEV_8800&SUBSYS_EA3D14F1&REV_05\4&25700A26&0&3020 немогу найти драйвера на PCI\VEN_1039&DEV_7012&SUBSYS_810D1043&REV_A0\3&61AAA01&0&17 Драйвера на PCI\VEN_10B7&DEV_1700&SUBSYS_80EB1043&REV_12\4&2E98101C&0&28 F0 Кто встречался с таким, подскажите - (#206;áúåêò) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|