Size: a a a

Сообщество Python Программистов

2021 February 28

AD

Andrew Dakhnovsky in Сообщество Python Программистов
v
Ещё б я кресты знал...
А есть примеры почитать или тулза для этого?
Что придется запихнуть и питон, и все либы, и их зависимости - понимаю, ничего не поделаешь.
а не проще ли питон отдельно ставить и потом вызывать из шарпа?
источник

v

v in Сообщество Python Программистов
Видимо переносимость страдает.
источник

AD

Andrew Dakhnovsky in Сообщество Python Программистов
v
Видимо переносимость страдает.
ну можешь пиинсталлером собрать в один экзешник
при запуске он распаковывает все в темп и запускает твой питон-скрипт
источник

v

v in Сообщество Python Программистов
Ну тут вопрос ещё в том, как данные гонять между программой на шарпе и скриптом.
источник

R3

Rud 356 in Сообщество Python Программистов
v
Ещё б я кресты знал...
А есть примеры почитать или тулза для этого?
Что придется запихнуть и питон, и все либы, и их зависимости - понимаю, ничего не поделаешь.
Сча откапаю, аль моменто
источник

R3

Rud 356 in Сообщество Python Программистов
источник

v

v in Сообщество Python Программистов
Тут ещё в 3.5 какая-то embedded distribution появилась, щас читаю про нее
источник

v

v in Сообщество Python Программистов
Да, вот это самое
источник

М

Манкурт Кобейн... in Сообщество Python Программистов
Можете разъяснить, как именно тут оператор умножения срабатывает?

a = [[]] * 3
a[0].append(100500)
print(a)
источник

М

Манкурт Кобейн... in Сообщество Python Программистов
Не, 3 массива с 100500
источник

R3

Rud 356 in Сообщество Python Программистов
А, я протупил
источник

v

v in Сообщество Python Программистов
Он делает список с тремя ссылками на один и тот же пустой список
источник

R3

Rud 356 in Сообщество Python Программистов
Манкурт Кобейн
Не, 3 массива с 100500
У тебя ссылка на один и тот же массив пустой три раза повторена
источник

AT

Alexander T in Сообщество Python Программистов
Манкурт Кобейн
Можете разъяснить, как именно тут оператор умножения срабатывает?

a = [[]] * 3
a[0].append(100500)
print(a)
Копирует ссылки верхнего уровня 3 раза и конкатенирует
источник

М

Манкурт Кобейн... in Сообщество Python Программистов
Alexander T
Копирует ссылки верхнего уровня 3 раза и конкатенирует
А почему тогда все элементы второго уровня под 0 индексом?
источник

AT

Alexander T in Сообщество Python Программистов
на этом основано zip(*[iter(a)]*3)
источник

v

v in Сообщество Python Программистов
Сделай [id(lst) for lst in a]
источник

R3

Rud 356 in Сообщество Python Программистов
Манкурт Кобейн
А почему тогда все элементы второго уровня под 0 индексом?
Прочитай что я написал, у тебя ссылка на пустой массив одна лежит три раза, добавил в нулевой - добавил в массив, на который ссылаются все три
источник

AT

Alexander T in Сообщество Python Программистов
Манкурт Кобейн
А почему тогда все элементы второго уровня под 0 индексом?
они не все под 0
[[]] * 3 - ссылка на 0 элемент исходного списка копируется 3 раза, т.е. получается список из трех ссылок на один и тот же объект
источник

v

v in Сообщество Python Программистов
И сравни с
b =[[],[],[]]
[id(lst) for lst in b]
источник