Установка Python c нуля для Компас-3D.

Автор ТрындецЪ, 10.11.17, 16:21:43

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

IgorT

#20
.


Вират Лакх

Цитата: Вират Лакх от 10.11.18, 03:24:25
Чтобы одна и та же программа работала на 2 и 3 питоне, можно в начале написать универсальный код...
Пишут, что вариант через reload(sys); sys.setdefaultencoding('utf8') не очень хороший.
Вот, оказывается, есть способ проще и лучше:

# -*- coding: utf-8 -*-
from __future__ import unicode_literals

1) Не нужно импортировать sys
2) Строка универсальна - в питоне 2.х приносит пользу, в питоне 3.х - вроде ничего не портит.
3) print с русским текстом можно писать без u перед кавычками.
4) Избавляет от необходимости encode('cp1251') при внесении данных в объекты спецификации как это было с reload(sys)
5) Но при работе с файлами в питоне 2.х все-таки может потребоваться encode, который в третьем питоне мешает.
+ Благодарностей: 1

Умка

Установили пробную Компас 18 с сайта Аскон на новый системный блок Windows 10, Компас-макро присутствует из 3 файлов, но нет питона. Вопрос какой питон установить и как его подключить правильно?

pr0100

Цитата: Умка от 17.07.19, 06:52:58
Установили пробную Компас 18 с сайта Аскон на новый системный блок Windows 10, Компас-макро присутствует из 3 файлов, но нет питона. Вопрос какой питон установить и как его подключить правильно?
Скорее всего питон установился в папку в AppData

Volk62

В 18 версии Питон почему то отсутствует. Пришлось ставить ручками

p3452

Цитата: Volk62 от 07.09.19, 06:07:06
В 18 версии Питон почему то отсутствует. Пришлось ставить ручками

А в папке ProgramData смотрели?
C:\ProgramData\ASCON\KOMPAS-3D\18\Python 3

Volk62

Вот там как раз и не смотрел. Смотрел в самом компасе и в пользователях в AppData

Вират Лакх

Если файлы .pyw и .pywc не запускается двойным кликом и через "Открыть с помощью...", то придется кое-что подправить в реестре. На примере python 2.7.

Должны существовать разделы со строковыми параметрами:

HKEY_CLASSES_ROOT\.pyw -> (По умолчанию) -> Python.NoConFile
HKEY_CLASSES_ROOT\Python.NoConFile\shell\open\command -> (По умолчанию) -> "C:\Python27\pythonw.exe" "%1"

HKEY_CLASSES_ROOT\.pywc -> (По умолчанию) -> pywc_auto_file
HKEY_CLASSES_ROOT\pywc_auto_file\shell\open\command -> (По умолчанию) -> "C:\Python27\pythonw.exe" "%1"

Если иконки у них неправильные, то должно быть вот так:

HKEY_CLASSES_ROOT\Python.NoConFile\DefaultIcon -> (По умолчанию) -> "C:\Python27\DLLs\py.ico"

HKEY_CLASSES_ROOT\pywc_auto_file\DefaultIcon -> (По умолчанию) -> "c:\Python27\DLLs\pyc.ico"

После установки иконок придется выйти из системы и войти обратно или перезагрузить компьютер.
+ Благодарностей: 1

Умка

K19W10 Python 3. Как запустить скрипт не открывая окно Python.

Наталья Забродина

Здравствуйте, так и не понятно из этой темы как вставить код программы написанной на Python в компас 3 d ???? С самого начала на понятном языке, пошаговая инструкция, спасибо, если кто поможет

Вират Лакх

Цитата: Наталья Забродина от 01.11.20, 08:56:23Здравствуйте, так и не понятно из этой темы как вставить код программы написанной на Python в компас 3 d ???? С самого начала на понятном языке, пошаговая инструкция, спасибо, если кто поможет
Код вставлять в компас не надо. Пошаговая инструкция:
0. Можно обновить питон, удалив идущий в комплекте с компасом и установив новый с сайта https://www.python.org/downloads/
При этом нужно ставить дополнение отсюда: https://github.com/mhammond/pywin32/releases
1. Определиться с редактором, где писать код, например мне нравится https://www.geany.org/
2. Написанный код запускать через python.exe для .py или pythonw.exe для .pyw, указав его как параметр в командной строке.
Или на кнопку типа Выполнить в среде разработки. Или просто двойным кликом по файлу с кодом.
3. Код должен запускать Компас или цепляться к запущенному типа того:
from win32com.client import Dispatch
iApplication = Dispatch('Kompas.Application.7')
Далее - всё, что от него требуется.

студент

Коллеги, подскажите. Вместе с компасом устанавливается пайтон 3.2.5, при чем портабельный, у меня для своих нужд установлен пайтон 3.8. Как заставить компас работать с установленным у меня пайтоном? Если ассоциирую файлы с пайтоном 3.8 перестают работать макросы.

Вират Лакх

Цитата: Студент от 05.11.20, 08:44:50Если ассоциирую файлы с пайтоном 3.8 перестают работать макросы.
Надо выяснить, почему перестают работать. Может быть для 3.8 вы не установили https://github.com/mhammond/pywin32/releases ?

студент


Умка

Аналогично. Стоит W10-К19 + Python-Portable 3.5.2.1 но файлы запустить не могу. Пришлось установить Python 2.6 как на прежней К13 и сейчас все скрипты работают корректно.

Вират Лакх

Цитата: Студент от 05.11.20, 08:56:41установлен
Тогда что выдает питон при запуске скрипта через отладчик или среду разработки?
Было что-то такое. Новые версии питона 3 по сравнению с ранними питонами 3 по-другому обрабатывают какую-то свою функцию.
Сейчас сходу не помню, что именно.
Цитата: Умка от 05.11.20, 09:01:31Аналогично. Стоит W10-К19 + Python-Portable 3.5.2.1 но файлы запустить не могу. Пришлось установить Python 2.6 как на прежней К13 и сейчас все скрипты работают корректно.
Может у вас не аналогично, а просто макросы были написаны для второго питона.
Можно писать код так, чтобы он работал на всех версиях питона, но это дополнительные трудозатраты.

студент

хм.... выдает "ModuleNotFoundError: No module named 'LDefin2D'"

Вират Лакх

Цитата: Студент от 05.11.20, 09:15:01хм.... выдает "ModuleNotFoundError: No module named 'LDefin2D'"
Это модуль от Компас-макро. Если вы его не используете (скорее всего), то уберите из кода. Там всякие MH аналогично.
Наоборот, если используете, то добавьте из компасного питона в свой питон по аналогичному пути или рядом со своим скриптом.

студент

Рядом с питоновским файлом лежит макро. Как в свой питон добавить? что то не понял