Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
with open("/home/khim/helloworld", "w") as gogo:Необходимость этого доказывает ваш второй пример где вы умудрились закрыть файл — и это в статье со словами Запомните! Любое открытие файла должно сопровождаться последующим закрытием с помощью этого метода…
gogo.write("Hello, world!\n")
$ pwd
$ python -c "import os; print os.path.abspath(os.curdir)"
([\d]+)\.([\d]+)\.([\d]+)\.([\d]+) всё же можно и квантификатор {1,4} себе позволить для облегчения читаемости :)import os, re, sys, commands
r = re.findall(r'address\s+([.\d]+)', commands.getoutput('host '+sys.argv[1]), re.MULTILINE)
print 'Addr:', r[0] if len® else ''
listdir(path)Пишите уж тогда принадлежность к модулю
gogo.closeclose() метод, а не свойство — в питоне нельзя опускать скобки, если в функцию не передаются параметры.
hst != NoneТак не пишут:
Comparisons to singletons like None should always be done with
'is' or 'is not', never the equality operators.
RESULT=$(host l2tp.corbina.ru)
gogo = open ("/home/username/helloworld","w")
gogo.write("Hello, world!")
gogo.close()
echo "Hello, world!" >> /home/username/helloworld
var="`cat file | grep <шаблон для вывода строк> | sed <шаблон для замены какого-либо одного текста на другой> | awk <печать определённых полей> | ... <и так далее>`"
я не сомневаюсь, наверняка в python'е тоже есть функционал (как и в любом другом нормальном ЯП) для работы с каналами (помню, даже как-то специально ковырялся в нём именно с целью разобраться, как их в нём можно использовать), но сомневаюсь, что это будет выглядеть столь лаконично и записываться в одну строку без лишних слов; опять же, в Вашем примере выше — целых два лишних слова — «execute().text»; так к чему плодить сущности без необходимости. Ну и ещё не стоит забывать, что в shell'е если переменная состоит только из цифр, то она, в зависимости от контекста, может использоваться и как численная переменная, и как текстовая — это _очень_ полезно и эффективно; afaik, в python'е без переконвертирования типов для этого не обойтись(хоть он и может использовать динамическую типизацию) — а это, опять же, лишние строки для вызова других методов для конвертирования данных.
Скрипты Python против Bash