Pull to refresh

Удобный print с номером строки и названием переменной

Reading time1 min
Views3.3K

Допустим Вы что-то хотите распечатать в консоль.

hello = "world"
print(hello)
>>> world

Пока программа небольшая, то с этим нет никаких проблем. Предположим что вы начали работать с каким либо классом, в котором к примеру ~3000 строчек (legacy код). Количество "принтов" увеличивается, и понять с первого раза какой "принт" к какой переменной относится становится не просто. Можно конечно писать вот так.

print('hello=', hello)

Да это уже лучше. Но все равно хотелось бы видеть и номер строки и тип переменной. А в некоторых случаях и путь к файлу.

Для таких случаев я написал небольшую (и очень удобную) утилиту, которая облегчит Вам жизнь. Давайте попробуем ее установить.

pip install simple-print

И что-нибудь попечатать.

from simple_print import sprint

master = "yoda"

# Напечатаем имя переменной с номером строки 
sprint(master) 

# И покрасим cиним цветом
sprint(master, c="blue") 

# Добавим белый фон
sprint(master, c="blue", b="on_white") 

# И подчеркивание
sprint(master, c="blue", b="on_white", a="underline") 

# И путь к файлу
sprint(master, c="blue", b="on_white", a="underline", p=True)

# Вернем как строку
s = sprint(master, s=True) # return as string
Результат выполнения в консоли
Результат выполнения в консоли

Исходный код можно посмотреть тут https://github.com/Sobolev5/simple-print

Продуктивной и удобной Вам разработки.

Обновление:

Добавил к функции параметр i (indent), который позволяет делать отступы.

К примеру:

def test_indent():

    fruits = ["lemon", "orange", "banana"]
    sprint(fruits, c="green")
    
    for fruit in fruits:
        sprint(fruit, c="yellow", i=4)
Результат выполнения в консоли
Результат выполнения в консоли

Tags:
Hubs:
Total votes 9: ↑3 and ↓6-1
Comments13

Articles