Skip to content

Instantly share code, notes, and snippets.

Об экранировании

В программировании мы говорим об экранировании, когда нам нужно вставить в символьную строку символ, который может быть трактован интерпретатором или компилятором, как инструкция или часть синтаксиса, ей не являющаяся. Например, мы хотим уместить кавычки, но кавычки уже используюся для задания начала и конца самой строки.

Чаще всего для этого используется \ — обратный слеш.

Разберем пример с кавычкой

Неверно:

>>> print('don't ')
@lesha-co
lesha-co / ascii_box.txt
Last active March 22, 2023 15:45
Палитра для рисования ASCII
Таблицы
Обычная Жирная Двойная
┌─┬─┐ ┏━┳━┓ ╔═╦═╗
├─┼─┤ ┣━╋━┫ ╠═╬═╣
│ │ │ ┃ ┃ ┃ ║ ║ ║
└─┴─┘ ┗━┻━┛ ╚═╩═╝
Частично двойные и жирные
╓╥╖ ╒╤╕ ┎┰┒ ┍┯┑
╟╫╢ ╞╪╡ ┠╂┨ ┝┿┥
╙╨╜ ╘╧╛ ┖┸┚ ┕┷┙
@lesha-co
lesha-co / api.py
Created August 10, 2018 12:09
Как вызывать апи, когда параметры — массивы или объекты
import requests
import json
def transform(params):
params2 = {}
for key, value in params.items():
if type(value) is list:
for i, v in enumerate(value):
new_key = '{}[{}]'.format(key, i)
// ==UserScript==
// @name Отключить старые диалоги
// @namespace http://tampermonkey.net/
// @version 0.1
// @description Скрывает диалоги старше месяца ВКонтакте
// @author lichevsky
// @match https://vk.com/im*
// @grant none
// ==/UserScript==
(() => {
@lesha-co
lesha-co / asyncLoop.js
Created December 11, 2017 00:30
Хелпер, который последовательно выполняет асинхронный executor над элементами из list
/**
* Хелпер, который последовательно выполняет асинхронный executor над элементами из list
* @param {Array} list список параметров для каждого выполнения
* @param {Function} executor асинхронная (возвращает Promise) или синхронная функция
*/
function asyncLoop(list, executor) {
return new Promise((resolve, reject) => {
let results = [];
(function loop(i) {
if (i < list.length) {
# coding=utf-8
import re
from urlparse import urlparse, urlunparse
from flask import Flask
from bs4 import BeautifulSoup, NavigableString, Tag
import requests
app = Flask(__name__)
DOMAIN = 'habrahabr.ru'
IGNORED_TAGS = ['style', 'script']
PORT = 5000
@lesha-co
lesha-co / main.py
Last active June 5, 2016 15:36
Задача с двача
# coding=utf-8
"""
Двач, у меня для тебя жизненная математическая задача:
В пиццерии проводится акция:
Закажи 2 пиццы и получи 3-ю в подарок, но третья пицца должна быть не дороже среднего арифметического цен 2 пицц.
Тебе нужно заказать 6 пицц, соответственно только за 4 заплатив.
Нужно подобрать наиболее выгодный вариант заказа.
Цены: 72, 78, 81, 91, 92, 110.
"""
@lesha-co
lesha-co / app.js
Created March 6, 2015 11:29
my first async lib
magic([taskA, taskB, taskC], [taskD], [taskE, taskF], [taskG]); // see magic.js main()
/*
each task is a function like this:
function taskA(param1, param2, param3 ) { // arbitary number of params
return function (fCallback) {
setTimeout(function(){
fCallback (null, param1); // error, result
}, param1)
};