Давно можно было.
можно, но синтаксис другой и ты его знаешь ведь :)
Это как?
List::Util::uniq(@a1, @a2) vs a1 + a2
В Perl операции опраторозависимы. Следовательно, + приводит оба массива к скаляру и вычисляет сумму длин массивов.
из вопроса не было понятно что нужен юник, кстати
Но ведь сумма двух множеств это подразумевает
Двух перловых массивов, не множеств.
Вот именно! Бинго! Чтобы инженеру-математику писать на перле нужно знать и математику, и перл. Чтобы ему же писать на питоне достаточно знать только математику
чтобы программировать -- надо знать программирование. математк ты, физик или биолог -- пофиг. кстати, математиков-то как раз меньшинство
с лопаты набрасывают!
Питон интуитивно понятен; ничего там знать не надо
из математиков обычно прогаммисты лучшее получаются, чем из специально обученных "программистов"
нифига. может местами он несколько более "математичен" и только. а в других местах удивления
Откуда взят пример a1 + a2? x = [1,2,3,4] f = [1,11,22,33,44,3,4] In : list(set(x).symmetric_difference(set(f))) Out: [33, 2, 22, 11, 44] https://stackoverflow.com/a/52033053
перл понятнее.. у питона все зависит от модулей которые ты импортировал. и соответственно ты должен знать кучу функций какие в каком модуле лежат. или зависеть от ide. в подтверждение того что что перл проще , говорит тот факт что однострочник ты на перле напишешь а на питоне нет. :)
Ты вообще что-то не то нагуглил :(
Как это нет? Я пишу
односторочный цикл на питоне ??
А что тогда означает сумма "множеств" в Python?
korg@ref:~$ python3 -c 'for i in range(1,5): print(i)' 1 2 3 4 korg@ref:~$
https://ru.m.wikipedia.org/wiki/%D0%9E%D0%B1%D1%8A%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BC%D0%BD%D0%BE%D0%B6%D0%B5%D1%81%D1%82%D0%B2
А где пример на python?
Одна же строка
строка, содержащая "\n" это две строки :)
Приведи полный пример.
а больше одной операции в цикле ? :)
Тоже можно, в чем проблема то :)
Я на обед ухожу, сам напиши :) x+f в твоих терминах
>>> a1 = [5, 7, 9] >>> a2 = [7, 9, 11] >>> a1 + a2 [5, 7, 9, 7, 9, 11]
>>> a1=[1,2,3,4] >>> a2=[4,5,6] >>> print(a1+a2) [1, 2, 3, 4, 4, 5, 6]
все, что угодно. как автор определил +, так и работает
кажется я понял. Сергей незаметно замылил вопрос, что складываются не массивы, а "множества". в программистском смысле.
говно из них получается, а не программисты
Тогда математик должен узнать, что в Python есть тип Set, а в Perl можно использовать хэши для этого. my %seen = map { $_ => 1 } @a1, @a2; say for keys %seen;
математики -- универсальны. из них любой предметник может получиться, какой он захочет.
единицы то зачем? андефы ключам лучше раздавать
Я имею ввиду, что все равно нужно и в Perl и в Python знать язык. А не "интуитивно" программировать.
А чем лучше? Память не использует?
ну, хорошо, давайте множествами... >>> a1={1,2,3,4} >>> a2={4,5,6} >>> print(a1+a2) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unsupported operand type(s) for +: 'set' and 'set'
видел я код D.J.Бернштейна - немайнтенабельное говно
утверждение основано на субъективном опыте одного деканата
чот на практике плохо хотят, видимо...
Обсуждают сегодня