Найти - Пользователи
Полная версия: Удалить пробел между двумя переменными
Начало » Центр помощи » Удалить пробел между двумя переменными
1
Djam36
Всем привет и доброго времени суток,
есть код вида (костыли возможно) но более подходящего у меня на ум не пришло
#!/usr/bin/python
import socket
import datetime
sock = socket.gethostname()
now_time = datetime.datetime.now()
print sock[:12],now_time.strftime("%d.%m.%Y_%H:%M")
По идее я сейчас тестирую как это выглядит в будущем будет создаваться такой файл имя хоста + время
пока получается вот так
hostname _ 11.02.2015_16:44 как можно убрать проблем между подчеркиванием? с двух сторон, просто хочу сделать такой вывод hostname_11.02.2015_16:44
Спасибо

P.S пока писал разобрался) спасибо всем, ниже как сделал может пригодятся костыли
print sock[:12]+("_")+now_time.strftime("%d.%m.%Y_%H:%M")
Alex_HH
print now_time.strftime("{}_%d.%m.%Y_%H:%M").format(sock[:12])

Так как по мне изящней
Djam36
Alex_HH
Да возможно изящней, для тех кто хорошо разбирается в Python) т.к все кто будет работать со скриптом не знают Python, а я только 5 день изучаю, думаю будет понятнее
print sock[:12]+("_")+now_time.strftime("%d.%m.%Y_%H:%M")
А когда уже подучу python в любом случае буду переделывать скрипт, т.к там щас сплошные костыли, тогда и воспользуюсь возможно вашим советом) спасибо за рекомендацию)
Alex_HH
Поверьте мне, вы не будут переучиваься, и никто не будет, переучиваться сложно, делайте сразу правильно. Проблем будет меньше, или их вообще не будет. Это верно не тольков программирвании, но и в любом деле.
py.user.next
>>> import datetime
>>> 
>>> dt = datetime.datetime.now()
>>> '{:%d.%m.%Y_%H:%M}'.format(dt)
'12.02.2015_07:10'
>>>

У класса datetime определён свой метод форматирования.
>>> dt.__format__
<built-in method __format__ of datetime.datetime object at 0xb753db90>
>>>

>>> format(dt, '%d.%m.%Y_%H:%M')
'12.02.2015_07:11'
>>>

Djam36
в любом случае буду переделывать скрипт
Не, вот как напишешь, так оно и будет потом лежать и работать. Потому что либо его надо заново писать будет (тратить время), либо оставить в таком виде. Грабли вылезут, когда условия задачи начнут расширяться типа “добавь там то, добавь там это, ой, а у нас поменялось вот это”. И там станет ясно, что ничего нельзя менять, потому что старое сломается.
Djam36
py.user.next
Спасибо, за пример.
По поводу что оно будет лежать, это не так, т.к я точно также изучал BASH, писал грабли потом исправлял по мере поступления знаний, даже если приходилось переписывать старое, пока старое работало, писал новое, потом старое в архив, новое запускал.
И в какой-то прекрасный день, посмотрел все свои старые подделки* и ужаснулся
В любом случае всем спасибо, тему можно закрывать
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB