Size: a a a

2020 January 09

KK

Kirill (Cykooz) Kuzminykh in rannts
Даже в языках со статической типизацией стараются обходится без .format(), т.к. это почти всегда рантайм парсинг шаблона при каждом вызове. Вместо этого стараются предоставить разного рода макросы, которые позволяют "распарсить шаблон" в компайл тайме.
источник

RB

Roman Bolkhovitin in rannts
Kirill (Cykooz) Kuzminykh
In [1]: name = 'User'                                                                                         

In [2]: timeit f'Hello {name}'                                                                                
49.1 ns ± 0.319 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)

In [5]: tpl = 'Hello {name}'                                                                                  
In [6]: timeit tpl.format(name=name)                                                                          
238 ns ± 1.51 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
Ну там разы конечно, но наносекунды. Когда они становятся важны, наверное питон вообще не лучший выбор )))
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Roman Bolkhovitin
Ну там разы конечно, но наносекунды. Когда они становятся важны, наверное питон вообще не лучший выбор )))
Работа сто строками, обработка текста, рендеринг HTML и других шаблонов - это наверное очень частая сфера использования питона.
источник

KK

Kirill (Cykooz) Kuzminykh in rannts
Если эти наносекунды запихнуть в цикл (например конвертация строчек лога из одного вида в другой) - то это будет уже сильно заметно.
источник

БС

Байт Словович in rannts
+++
меня расстраивает что питон очень медленный язык. Просто расход процессорных тактов из ниоткуда временами.
Базовую либу хоть пытаются вылезать.
Но это не означает что разработчик должен писать медленный код из за того, что питон медленный.
f-string это красиво и понятно. Засовывать логику в шаблоны — плохо, но сама возможнсть писать f"hello {user}" это прям заебись. Кратко и понятно.
источник

💭П

💭 Руслан Прохоров in rannts
Я зануда
источник

💭П

💭 Руслан Прохоров in rannts
источник

ИК

Иван Кривошеев in rannts
А 1,2,3 - это что?)
источник

💭П

💭 Руслан Прохоров in rannts
количество переменныйх в строке
источник

💭П

💭 Руслан Прохоров in rannts
timeit f'{user}'
30.1 ns ± 0.117 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)

timeit '{user}'.format(user=user)
320 ns ± 1.54 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

timeit f'{user}:{group}'
135 ns ± 1.82 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)

timeit '{user}:{group}'.format(user=user, group=group)
660 ns ± 4.78 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

timeit f'{user}:{group}:{uuid}'
177 ns ± 3.16 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)

timeit '{user}:{group}:{uuid}'.format(user=user, group=group, uuid=uuid)
898 ns ± 32.5 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

timeit f'{user}:{group}:{uuid}:{triger}'
250 ns ± 11.2 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

timeit '{user}:{group}:{uuid}:{triger}'.format(user=user, group=group, uuid=uuid, triger=triger)
1.13 µs ± 5.16 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

timeit f'{user}:{group}:{uuid}:{triger}:{temp}'
272 ns ± 0.765 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

timeit '{user}:{group}:{uuid}:{triger}:{temp}'.format(user=user, group=group, uuid=uuid, triger=triger, temp=temp)
1.39 µs ± 28.2 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
источник

SA

Sergey Arkhipov in rannts
Я ещё не встречал на Питоне таких задач или проектов, где вот эта скорость, ф-строки и формат, имели хоть какое-нибудь значение
источник

💭П

💭 Руслан Прохоров in rannts
Sergey Arkhipov
Я ещё не встречал на Питоне таких задач или проектов, где вот эта скорость, ф-строки и формат, имели хоть какое-нибудь значение
Я зануда. F-string более читабелен. И стока кода короче на 6 символов :-) и вообще, народ бухать будет, а у меня температура поднялась :-(
источник

SA

Sergey Arkhipov in rannts
Я собираюсь выезжать, кстати. Кто ещё будет? Я на час, не больше
источник

AR

Aleksey Ryabchikov in rannts
источник

БС

Байт Словович in rannts
вы там через теляфоны бухаете чтоль?
источник

SA

Sergey Arkhipov in rannts
Это где? В Шмель же собирались
источник

AR

Aleksey Ryabchikov in rannts
Это в гостинице были, уже в Шмеле
источник

SZ

Sergey Z in rannts
Байт Словович
вы там через теляфоны бухаете чтоль?
источник

in

ildar nizamov in rannts
Байт Словович
вы там через теляфоны бухаете чтоль?
аудионаркотики, нейропиво
источник

💭П

💭 Руслан Прохоров in rannts
ildar nizamov
аудионаркотики, нейропиво
я первое так и не смог найти и понять ))))
источник