Ошибка Python: inconsistent use of tabs and spaces in indentation

При запуске кода возникает ошибка синтаксиса— inconsistent use of tabs and spaces in indentation. Что это означает и как решить эту проблему? Дело в том, что python следит за соблюдением единообразия в использовании пробелов, которые показывают отступы частей кода. Если вы используете tab, то могут возникнуть сложности, так как часть табов может неверно интерпретироваться в пробелы. В итоге, вы видите ошибку синтаксиса, которую бывает трудно исправить. Continue reading

Posted in Python | Leave a comment

[решение] размытые смайлики в phpBB (или других форумах)

Для начала – как добавить смайлики в phpBB:

  1. загружаем картинки-смайлики в /images/smilies
  2. на форуме: Администраторский раздел → “Сообщения” → “Смайлики” → снизу “Добавить несколько смайликов”
  3. заполняем поля, сверху справа галку и все добавляем

Теперь… Часто при создании новых смайликов – мы берем большие картинки и уменьшаем их размер. В процессе уменьшения размера картинки – она замыливается.. Есть разные алгоритмы даунскейлинга, можно в настройках фотошопа поменять; но в любом случае результат будет паршивым. Тут или руками дорисовывать или наложить Unsharp mask (что может испортить изображение). 

Самый простой выход – даунскейлинг силами браузера:

  1. даунскейлим (уменьшаем) картинку в 2 раза больше той, которой должен быть смайлик. Пример: смайлик у нас будет 15х17 пикселей. Тогда исходную картинку мы делаем 30х34.
  2. Загружаем получившиеся “большие” смайлики
  3. В настройках доьбавления смайликов ставим им нужный нам размер (в случае в примером выше – 15х17).

Таким образом, наш смайлик будет весить чуть побольше, но зато он будет нарядным и качественным. В принципе, этот прием можно использовать и в обычном вебе 😉 Буду рад вашим комментариям!

Posted in Photoshop, phpBB, Дизайн и верстка, Лайфхаки | Leave a comment

Python: Задачи и решения (Глава 6. Функции. Игра “Крестики-нолики”).

Продолжаем практиковаться в программировании. После шестой главы в книге: Майкл Доусон “Программируем на Python”, 2014 (Michael Dawson “Python Programming for the Absolute Beginner”, 3rd Edition), где я научилась использовать функции, пора переходить к практике. Сделаем домашнее задание вместе!

Доработка функции ask_number() / hod_number()

Задача: Доработайте функцию ask_number() или hod_number() так, чтобы ее можно было вызывать еще с одним параметром — кратностью (величиной шага). Сделайте шаг по умолчанию равным 1. Continue reading

Posted in Python | Leave a comment

[Гайд] Переход на https – это просто и бесплатно

Наслышан о том, что некоторые интернет-провайдеры намылились встраивать свою рекламу напрямую через трафик, если сайт на http. Ну договор составлен таким паршивым образом, что имеют право, скоты. Пришлось поднимать свою ленивую задницу и таки переносить все мои 100500 сайтов на https.

Процесс оказался относительно простым. Приведу весь алгоритм (для виртуального хостинга):

    1. получаем сертификат. Это бесплатно и делается в один клик на большинстве хостингом. Выбираем домен, жмем кнопку – его автоматически “выпускают”.
      Есть разные сертификаты; рекомендую не запариваться и использовать бесплатный SSL Let’s Encrypt. Он дается вроде как на три месяца; но по факту все хостинги его автоматически продлевают; так что вам не придется и пальцем шевелить лишний раз после того, как все единожды настроите.

Continue reading

Posted in Веб-проекты, Хостинг и домены | Leave a comment

Python: нестандартные функции. Игра “Крестики-нолики”.

Продолжаем учить язык программирования пайтон Python. Переходим к изучению 6 главы “Функции. Игра Крестики-нолики” по книге: Майкл Доусон “Программируем на Python”, 2014 (Michael Dawson “Python Programming for the Absolute Beginner”, 3rd Edition), чтобы создавать собственные функции и работать с глобальными переменными.

Как создать функцию?

Общий вид функции в Python: название_функции()

Чтобы создать собственную функцию, нужно ее объявить.

Общий вид объявления функции

def название_функции(параметр1, параметр2...):
    '''Документирующая строка'''
    Блок выражений функции

Continue reading

Posted in Python | Leave a comment

CodeLobster IDE – бесплатный PHP, HTML, CSS, JavaScript редактор

{ Реклама в скобках (текст предоставлен спонсором)}

В этой статье мы рассмотрим бесплатный кросс-платформенный редактор для веб-разработки – CodeLobster IDE. Он уже долгое время присутствует на рынке и завоевал очень большое количество пользователей.

CodeLobster IDE предназначен для редактирования PHP, HTML, CSS и JavaScript файлов. Он подсвечивает код в зависимости от синтаксиса, показывает подсказки для тэгов, функций и их параметров. Этот редактор очень хорошо работает со смешанным кодом.

Если Вы вставите РНР код в какой-нибудь HTML шаблон, то редактор корректно подсветит и HTML и PHP части, то же самое будет со вставками CSS и JavaScript кода.

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

Continue reading

Posted in IDE | Leave a comment

Гитхаб: как обновить форк

Бывает форкнешь репу на всякий пожарный (удаляют порой; знаем, проходили..) и забудешь про нее. Но в нее что-то пишут, обновляют – нужно и свою обновить. Сделать это проще всего через веб-интерфейс:

  1. в своем форке жмем Compare
  2. меняем базовую (base) репу на свой форк
  3. жмем compare across forks
  4. меняем хэд (head) репу на оригинал, откуда обновляем
  5. создаем пул реквест и мержим!

Можно это сделать и через баш, но у меня он на виртуалке и туда лень заходить, ради того, чтобы репу аптудейт сделать 🙂 Есть еще софтины, которые сами подобным занимаются, но как-то неохота захламлять ими комп.

Буду рад вашим комментариям!

Posted in GitHub | Leave a comment

Python: Задачи и решения (Глава 5. Списки и словари. Игра “Виселица”).

Продолжаем практиковаться в программировании. После пятой главы в книге: Майкл Доусон “Программируем на Python”, 2014 (Michael Dawson “Python Programming for the Absolute Beginner”, 3rd Edition), где я научилась делать словари и пользоваться списками, пора переходить к практике. Сделаем домашнее задание вместе!

Задача: Создайте программу, которая будет выводить список слов в случайном порядке. На экране должны печататься без повторений все слова из представленного списка.
Continue reading

Posted in Python | Leave a comment

The Bat – не работает проверка почты gmail

Начиная с конца 2019 года The Bat (почтовый клиент) перестал работать с OAuth; при проверке почты невозможно нажать на кнопку ‘Allow’:

Решение:

Свойство почтового ящика → Получение почты → Аутентификация → “Обычная”.

Если же вы хотите продолжать использовать OAuth – придется раскошелиться на The Bat версии 9.0 и выше.

Posted in Email (The Bat) | 2 Comments

Python: списки и словари

Продолжаем учить язык программирования пайтон Python. Переходим к изучению 5 главы по книге: Майкл Доусон “Программируем на Python”, 2014 (Michael Dawson “Python Programming for the Absolute Beginner”, 3rd Edition), где освоим списки, списочные методы и словари.

Списки в Python

Списки похожи на кортежи, которые мы изучали в прошлой главе. Важно запомнить, что в отличие от кортежей, списки могут изменяться. Общие принципы работы с кортежами применимы к спискам. Continue reading

Posted in Python | Leave a comment