Влад 🇺🇦
как его сделать правильно?
Medoed
помогите,пожалуйста со скриптом
tf.add("/tmp/").append(files) - эта строчка чем занимается?
Влад 🇺🇦
мне нужно в итоге получить /tmp/files files это files = []
Влад 🇺🇦
tf.add("/tmp/" + str(files))
Влад 🇺🇦
но получаю "/tmp/['core-gameserver-11-1011-1011-2966-1562596479']"
Влад 🇺🇦
как убрать скобки?
Nikolay
😆
Саша
мало того что скобки, так ещё и '
Vlad🍁
tf = tarfile.open("core-dump.tar.gz", mode="w:gz") files = [] for core in os.listdir('/tmp'): if core.startswith('core-gameserver'): files.append(core) tf.add("/tmp/").append(files) tf.add("/data/gameserver_logs") tf.close()
with tarfile.open('core-dump.tar.gz', mode='w:gz') as tf: tf.add('/dara/gameserver_logs') for core in os.listdir('/tmp'): if core.startswith('core-gameserver'): tf.add(f'/tmp/{core}') Не уверен, но может так?
Vlad🍁
tf.add("/tmp/" + str(files))
Ты добавляешь массив в виде строки
Vlad🍁
То есть это [ values ]
Влад 🇺🇦
а как массив нормально передать?
Vlad🍁
Зачем массив, показал выше
Vlad🍁
Или он еррорит на одинаковую папку?
Влад 🇺🇦
щас попробую, спасибо
Vlad🍁
Попробуй
Dogma
а как массив нормально передать?
проитерироваться по массиву и соединить путь с названиями файлов в массиве
Dogma
for file in files: path = os.path.join('/tmp', file)
Влад 🇺🇦
Попробуй
tf.add(f'/tmp/{core}') ^ SyntaxError: invalid syntax
Vlad🍁
Версия питона?
Vlad🍁
tf.add('/tmp/' + core)
Maxim
tf.add(f'/tmp/{core}') ^ SyntaxError: invalid syntax
tf.add('/tmp/{core}'.format(core=core))
Влад 🇺🇦
Dogma
tf.add('/tmp/' + core)
может будете нормально пути собирать а не конкатенировать и форматировать как ебнутые
Vlad🍁
Python 2.7.13
Извращенец?
Vitaliy
Python 2.7.13
Форматирование строк появилось в 3.6
Dogma
Форматирование строк появилось в 3.6
Template, %, .format не было чо ли?
Dogma
Ещё один наркоман
Vitaliy
Ещё один наркоман
Обоснуй, ответь
Vlad🍁
Зачем
Vlad🍁
Можно проще написать
Maxim
Dogma
Обоснуй, ответь
В 3.6 появилась интерполяция строк, f-strings. Они нихуя не форматирование потому что ими ты не задашь шаблона.
Dogma
Можно проще написать
А слеши под ос будешь ставить наугад?
Влад 🇺🇦
получилось, спасибо!
Vitaliy
Ещё один наркоман
Обоснуй слова про наркомана, а не про строки
Vlad🍁
А слеши под ос будешь ставить наугад?
Одно дело писать для себя, другое для проды
Дмитрий
Обоснуй слова про наркомана, а не про строки
аноним в интернете требует с анонима в интернете пояснить за базар. классика.
Dogma
Одно дело писать для себя, другое для проды
Одно дело учиться писать правильно, другое дело учить хуёвому.
Дмитрий
no u
Vlad🍁
Одно дело учиться писать правильно, другое дело учить хуёвому.
Расскажи чем конкретно отличается os.path.join от формата
Dogma
Расскажи чем конкретно отличается os.path.join от формата
Тем что они как минимум делают абсолютно разные вещи?
Vlad🍁
читать доку - харам?
Прочитал - увидел
Dogma
os.path.join - хавает *арги которые соеднияет между собой разделителем который используется в той ос в которой запустили скрипт .format/%/ f-string - хуйня на коленке которая не следит за правильностью пути.
Kop
как подобный кусок правильно было бы написать?
Anton
есть идеи как победить? ps_script = """ $username = {0} $ListADSite = (Get-ADReplicationSite -Filter {name -ne 'TempSite'} ).name foreach ($ADSite in $ListADSite) { $ListADDC += (Get-ADDomainController -SiteName $ADSite -Discover -Writable ).hostname } foreach ($ADDC in $ListADDC) { Unlock-ADAccount $username -Server $ADDC -Verbose -WhatIf -PassThru } """.format(username) и выплёвывает KeyError: 'name -ne "TempSite"', что логично, т.к. они в { }
Anton
KeyError: '\'name -ne "TempSite"\''
Anton
KeyError: "name -ne 'TempSite'\\"
Дмитрий
KeyError: '\'name -ne "TempSite"\''
Попробуй прочитать не только вопрос, а еще и ответ)
Anton
ну так выплёвывает
Anton
Artyem
эпично, похоже даже не заходя на сам so, скопировать решение из превьюшки, а не из ответов, даже не пытаясь разобраться
Anonymous
Ищем Software Testing & It analiyst зп: $1500/месяц Необходимые знания: - Создание тестовых планов по функциональным и бизнес требованиям - Произведение ручных, регрессионных тестов - Коммуникация с командой по поводу пробелов и нестыковок в требованиях - Знание английского желательно Работа: - Занятость на длительное время - Сложные и интересные проекты. Вы научитесь многому, гарантировано! - Международные клиенты - Возможность работать удалённо. более детально - https://vk-cc.com/rabot1
Null
Наш следующий гость - wemake-python-styleguide (от @sobolev_nikita) представляет собой набор плагинов для flake8. Он позиционируется как самый строгий линтер. Он правда заставит вас страдать. И, кажется, это имеет смысл для получения идеального кода. Лицензия: MIT Статья на хабре: https://habr.com/ru/company/oleg-bunin/blog/433480/ Документация: https://wemake-python-stylegui.de/en/latest/
Артур
Ребята привет! Такой вопрос: хотелось бы автоматизировать одну довольно нудную задачу ( если в 2 словах: забрать определенные значения с 1 веб страницы и занести с определенные поля в другой или забрать с 1й и заинсертить в другую) Но я упираюсь в политику безопасности, есть только питон 2.7 и какие-то стандартные библиотеки.(селениума нет) Подскажите или дайте наводку в какую сторону искать? И вообще возможно ли это реализовать
Tishka17
может даже без re
Дмитрий
Tishka17
смотря что за страница
Артур
Xml/lxml?
Хмл есть
Dogma
Requests + re? Ну это хард вей
https://stackoverflow.com/a/1732454
Дмитрий
https://stackoverflow.com/a/1732454
If you have a small set of HTML pages that you want to scrape data from and then stuff into a database, regexes might work fine. For example, I recently wanted to get the names, parties, and districts of Australian federal Representatives, which I got off of the Parliament's web site. This was a limited, one-time job. Что не так?
Дмитрий
Понятно что писать свой селениум на регулярках не стоит Но и задачи такой нет
Dogma
Старый добрый залго
Dogma
Свой селениум на регулярках
Dogma
Ты наркоман?
Максим
bs4 ftw
Anonymous
Хмл есть
lxml не входит в стандартный набор батареек, но подходит под твою задачу ну и requests бы не помешал, но можно и через стандартный urllib