Питон умеет так
str = "ABCDEFGHIJ"
start, end, stride = 1, 6, 2
str[start:end:stride]
То есть можно задавать переменные через запятую.
Питон прекрасен.
Вот так правда уже не работает:
garbled = "!XeXgXaXsXsXeXmX XtXeXrXcXeXsX XeXhXtX XmXaX XI"
new1, new2 = garbled[::-1], new1[::2]
То есть переопределять переменные через друг друга в одной строке нельзя.
Но то, что можно первое уже великолепно.
Lambda
Прошёл раздел про обрезание массивов и lambda на codeacdemy.
Кодакадемистам стоило нарисовать бейджик с лого half life.
Shit Checker
На Udacity написал программку которая открывает файл и спрашивает у wdyl.com нет ли там матерных слов. Ничего примечательного кроме того, что я научился работать с внешними сервисами и открывать файлы.
Исходник (там еще рядом файлик quotes.txt для проверки)
Sublime + Python
Поставил Sublime 3. Прикрутил к нему Anaconda для работы с python. Поскольку мне пришлось поебаться с этим — оставлю здесь упрощённую инструкцию для получения желанного результата.
1. Запускаем консоль по нажатии на Ctrl+ё. Вставляем в неё следующий код:
import urllib.request,os,hashlib; h = 'eb2297e1a458f27d836c04bb0cbaf282' + 'd0e7a3098092775ccb37ca9d6b2e4b7d'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
2. Ctrl+Shift+P ищем install (package control: insstall)
3. Появится еще одно такое же окошко. В нём ищем Anaconda.
4. Перезапускаем Sublime.
5. Программа компилируется интерпритируется по Ctrl+B (это искал дольше всего)
6. Работает!
О да, тут есть автодополнение и нумерация строк, которых мне так не хватало пару занятий назад.