All streams
Search
Write a publication
Pull to refresh
16
0
Евгений @JRazor

Python программист

Send message
Кот залогинился, чтобы похвастать, судя по аватару?) Ждем цикл статей, «Применение кошачьей нежности в построении ИИ для игры в сеги»
А что необычного в ваших примерах?

1 пример — обмен проигнорирует скобки:
>>> a, b, c = 1, 2, 3
>>> a, (b, c) = c, (a, b)
>>> a, b, c
(3, 1, 2)

2 пример — объединение двух примеров из списка. Если объединять все примеры друг с другом, то скроллер превратится в точку.
Ну, тут уже дело в том, что в python понятие генератора изначально использовалось так. Вообще, это конструктор списка, что не вполне отражает его назначение, и посему было использовано понятие генератора списков. Возможно в соотношение с типами объектов в python это неверно, но на русском куда больше отражает суть выполняемых действий.
Списки используют квадратные скобки "[ ]", кортежи — круглые "( )", а множества и словари — образные скобки "{ }"
Условия — достаточно известная вещь. Смысл поста в том, чтобы отразить некоторые малоизвестные моменты. Нет смысла переписывать документацию в один пост.
Близкое по смыслу != одно и то же.

Да, знаю про функции высшего порядка. Удобная вещь, вот только забыл про нее. Сейчас опубликую.

Если честно, collections и itertools — это темы отдельных постов. Это два ужасно интересных модуля и в одну строку их не описать.
Habrahabr. Какой показательный пример. )
Вернется последнее значение:

def text():
    try:
        return 1
    except ValueError:
        return 2
    else:
        return 3
    finally:
        return 4

Функция вернет «4»
Насчет генератора словарей — это наиболее близкое определение. К тому же, оно было на многих ресурсах как генератор словарей. Согласитесь, очень похоже:

Генератор списков:
list = [x for x in range(1, 10)]

Генератор словарей:
dict = {a:a**2 for a in range(1, 10)}

Python — красивый язык, и своих слов я обратно не возьму. Здесь дело не в том, какой язык красивее питона. Читать стандартные библиотеки можно вместо книг. Возможно, PHP и красивее в плане написания крупных проектов, но только вот это не делает python для меня более уродливым.
Простите, я в заголовке указал, что тут 30 советов для гуру-питонистов? Это список, которые многие не знают. Кому-то это будет интересно, а тем кому не интересно — я ничего не навязывал.

Про set формулировка неверная, вы правы.

Насчет finally. Не рассказал хотя бы потому, что блок finally выполняется в любом случае и если человек хоть мало-мальски читал про исключения — он это знает. Что об этом рассказывать? А вот else — это нечто неопределенное. Он выполняется только тогда, когда не было исключения и на первый взгляд непонятно, как он работает.
Вы правы — нет, не пробовал. Не было необходимости. Но я говорил не об этом. В python главное — простота, а не маты программиста-питониста, разбирающего ваш код. )
Ну да, как я мог забыть!
image
Я описал, что скобки вместо отступов — возможноe зло и ваш код становится нечитабельным (снова возвращаемся к PEP 8). По крайней мере, я не видел такой практики. Обычно так делать нельзя, но если очень хочется, то можно.
Насчет «симметрической разницы» — я опечатался, конечно же. Я имел ввиду симметрическую разность. А функции первого класса — это достаточно неплохой заголовок для функций первого класса. )
Как я уже подчеркнул выше, некоторые пункты являют собой unpythonic стиль, поэтому я бы брал их на заметку только после прочтения мануала по стилю написания кода Python — PEP 8.

Information

Rating
Does not participate
Date of birth
Registered
Activity