VBA, Perl or Python

User avatar
liamkin
Уже с Приветом
Posts: 2643
Joined: 19 Jun 2003 20:22
Location: USA

Re: VBA, Perl or Python

Post by liamkin »

f_evgeny wrote: 20 Sep 2019 09:31
Flash-04 wrote: 19 Sep 2019 16:37 да, в Windows лучше PowerShell, для Linux - shell & python, хотя как я уже сказал в Windows тоже живет.
А смысл? Кто-то еще работает в Виндовс?
Если не вы не кондовый виндошный сисадмин, то учить ПомерШел смысла нет. Если сам МС добавляет Линуксовый тулсет в винды, то это верный знак. Облачный бизнес диктует свои законы! :umnik1:
User avatar
f_evgeny
Уже с Приветом
Posts: 10367
Joined: 12 Apr 2001 09:01
Location: Lithuania/UK

Re: VBA, Perl or Python

Post by f_evgeny »

liamkin wrote: 20 Sep 2019 16:27
f_evgeny wrote: 20 Sep 2019 09:31
Flash-04 wrote: 19 Sep 2019 16:37 да, в Windows лучше PowerShell, для Linux - shell & python, хотя как я уже сказал в Windows тоже живет.
А смысл? Кто-то еще работает в Виндовс?
Если не вы не кондовый виндошный сисадмин, то учить ПомерШел смысла нет. Если сам МС добавляет Линуксовый тулсет в винды, то это верный знак. Облачный бизнес диктует свои законы! :umnik1:
И не только, один из самых их успешных бизнесов - Azure тоже Линукс в основном. ИМХО.
Дальше, все будет только хуже. Оптимист.
User avatar
M. Ridcully
Уже с Приветом
Posts: 12017
Joined: 08 Sep 2006 20:07
Location: Силиконка

Re: VBA, Perl or Python

Post by M. Ridcully »

f_evgeny wrote: 20 Sep 2019 19:23
liamkin wrote: 20 Sep 2019 16:27
f_evgeny wrote: 20 Sep 2019 09:31
Flash-04 wrote: 19 Sep 2019 16:37 да, в Windows лучше PowerShell, для Linux - shell & python, хотя как я уже сказал в Windows тоже живет.
А смысл? Кто-то еще работает в Виндовс?
Если не вы не кондовый виндошный сисадмин, то учить ПомерШел смысла нет. Если сам МС добавляет Линуксовый тулсет в винды, то это верный знак. Облачный бизнес диктует свои законы! :umnik1:
И не только, один из самых их успешных бизнесов - Azure тоже Линукс в основном. ИМХО.
В каком смысле? Они не на Hyper-V?
Мир Украине. Свободу России.
User avatar
Flash-04
Уже с Приветом
Posts: 63430
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

Re: VBA, Perl or Python

Post by Flash-04 »

С подкручеными гайками:
https://azure.microsoft.com/en-us/resou ... lity-apps/
Not everyone believes what I believe but my beliefs do not require them to.
User avatar
kyk
Уже с Приветом
Posts: 31589
Joined: 21 Nov 2004 05:12
Location: камбуз на кампусе

Re: VBA, Perl or Python

Post by kyk »

Easbayguy wrote: 17 Sep 2019 05:24join -v1 --nocheck-order 1.txt 2.txt
Попробовал на Linux

Code: Select all

join -v1 --nocheck-order A.csv  B.csv > C.csv
не даёт нужного результата. Студенты и их кол-во в С.csv такие же, как и в A.CSV, хотя должно быть меньше, так как B.csv overlaps A.csv.

Формат: (на каждой строке)
ID,Student_name,program,...
Распознавание должно идти по ID

Syntax for join:
For each pair of input lines with identical join fields, write a line to standard output. The default join field is the first, delimited by whitespace.
А у меня comma-separated и при этом есть пробелы внутри второго и последующих fields

Code: Select all

180682340,Doe,John,Honours Bachelor of Science,Biochemistry and Biotechnology,,1,raso2340@best.edu
180518070,Pupkin,Vasya,Honours Bachelor of Science,Biology,,1,amug8070@best.edu
Будет ли работать если вставить пробел после первой запятой? Как это сделать?

Кстати, сделал Linux на Win-10 машине за 15 мин:
(1) https://docs.microsoft.com/en-us/window ... tall-win10 => Ubuntu 18.04 LTS
(2) https://docs.microsoft.com/en-us/window ... ize-distro
Биллу Гейтсу - зачОт
Лучше переесть, чем недоспать! © Обратное тоже верно :umnik1:
User avatar
Flash-04
Уже с Приветом
Posts: 63430
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

Re: VBA, Perl or Python

Post by Flash-04 »

а вот как оно было бы на змеюке:

Code: Select all

>>> list_1=["a", "b", "c", "d", "e"]
>>> list_2=["a", "f", "c", "m"]
>>> set(list_2) - set(list_1)
set(['m', 'f'])
>>> list(set(list_2) - set(list_1))
['m', 'f']
ессно элементами массива может быть что угодна, а для CSV у Питона есть парсер.
Not everyone believes what I believe but my beliefs do not require them to.
User avatar
kyk
Уже с Приветом
Posts: 31589
Joined: 21 Nov 2004 05:12
Location: камбуз на кампусе

Re: VBA, Perl or Python

Post by kyk »

уважаемые линуксоиды, помогите вставить пробел после 1ой запятой в Linux shell
Лучше переесть, чем недоспать! © Обратное тоже верно :umnik1:
User avatar
liamkin
Уже с Приветом
Posts: 2643
Joined: 19 Jun 2003 20:22
Location: USA

Re: VBA, Perl or Python

Post by liamkin »

kyk wrote: 21 Sep 2019 21:37 уважаемые линуксоиды, помогите вставить пробел после 1ой запятой в Linux shell
sed -e 's/,/, /' filename

если все запятые надо с пробелом, то
sed -e 's/,/, /g' filename
User avatar
liamkin
Уже с Приветом
Posts: 2643
Joined: 19 Jun 2003 20:22
Location: USA

Re: VBA, Perl or Python

Post by liamkin »

kyk wrote: 21 Sep 2019 05:25
Easbayguy wrote: 17 Sep 2019 05:24join -v1 --nocheck-order 1.txt 2.txt
Попробовал на Linux

Code: Select all

join -v1 --nocheck-order A.csv  B.csv > C.csv
не даёт нужного результата. Студенты и их кол-во в С.csv такие же, как и в A.CSV, хотя должно быть меньше, так как B.csv overlaps A.csv.

Формат: (на каждой строке)
ID,Student_name,program,...
Распознавание должно идти по ID

Syntax for join:
For each pair of input lines with identical join fields, write a line to standard output. The default join field is the first, delimited by whitespace.
А у меня comma-separated и при этом есть пробелы внутри второго и последующих fields

Code: Select all

180682340,Doe,John,Honours Bachelor of Science,Biochemistry and Biotechnology,,1,raso2340@best.edu
180518070,Pupkin,Vasya,Honours Bachelor of Science,Biology,,1,amug8070@best.edu
Будет ли работать если вставить пробел после первой запятой? Как это сделать?

Кстати, сделал Linux на Win-10 машине за 15 мин:
(1) https://docs.microsoft.com/en-us/window ... tall-win10 => Ubuntu 18.04 LTS
(2) https://docs.microsoft.com/en-us/window ... ize-distro
Биллу Гейтсу - зачОт
сдается мне, что утилитка join любит tab-delimited файлы. CSV для них хуже яду. Сконвертируйте CSV в tab-delimited (Excel или любой фриварный обработчик таблиц).
User avatar
Flash-04
Уже с Приветом
Posts: 63430
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

Re: VBA, Perl or Python

Post by Flash-04 »

CSV to TSV

Code: Select all

#!/usr/bin/env python
import csv, sys
csv.writer(sys.stdout, dialect='excel-tab').writerows(csv.reader(sys.stdin))
Not everyone believes what I believe but my beliefs do not require them to.
User avatar
kyk
Уже с Приветом
Posts: 31589
Joined: 21 Nov 2004 05:12
Location: камбуз на кампусе

Re: VBA, Perl or Python

Post by kyk »

liamkin wrote: 23 Sep 2019 15:00сдается мне, что утилитка join любит tab-delimited файлы. CSV для них хуже яду. Сконвертируйте CSV в tab-delimited
а тот факт, что есть пробелы внутри второго и последующих fields, т.е. типа такого "Honours Bachelor of Science"
не помешает конвертации в tab-delimited?
Лучше переесть, чем недоспать! © Обратное тоже верно :umnik1:
User avatar
kyk
Уже с Приветом
Posts: 31589
Joined: 21 Nov 2004 05:12
Location: камбуз на кампусе

Re: VBA, Perl or Python

Post by kyk »

Flash-04 wrote: 23 Sep 2019 15:24 CSV to TSV

Code: Select all

#!/usr/bin/env python
import csv, sys
csv.writer(sys.stdout, dialect='excel-tab').writerows(csv.reader(sys.stdin))
как этим пользоваться? в shell?
Лучше переесть, чем недоспать! © Обратное тоже верно :umnik1:
User avatar
Flash-04
Уже с Приветом
Posts: 63430
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

Re: VBA, Perl or Python

Post by Flash-04 »

ну это PY файл вообще то.
но его можно вызвать как:
python файлик.py

в данном примере его можно вызывать по имени без python, но надо chmod +x сделать
Not everyone believes what I believe but my beliefs do not require them to.
User avatar
Херовимчик
Уже с Приветом
Posts: 5284
Joined: 27 Sep 2008 21:48
Location: Moscow-Seattle-SFBA

Re: VBA, Perl or Python

Post by Херовимчик »

User avatar
kyk
Уже с Приветом
Posts: 31589
Joined: 21 Nov 2004 05:12
Location: камбуз на кампусе

Re: VBA, Perl or Python

Post by kyk »

там денег хотят
Лучше переесть, чем недоспать! © Обратное тоже верно :umnik1:

Return to “Вопросы и новости IT”