Рубрики
Без рубрики

Python одна строка с заявлением

https://youtu.be/akq9cjkbae8 То с выпиской заменяет прежние … Наконец-то блокирует в Python. Это гарантирует, что код очистки выполняется. Например, он закрывает открытые файлы, прежде чем выходить из блока. Рассмотрим этот пример кода (при условии, что этот код хранится в файле с именем «Code.py»): с Open («Code.py») в качестве кода: Print (Code.read ()) Вывод этого кода будет кодом … Python Одна строка с заявлением Подробнее »

Автор оригинала: Chris.

с Заявление заменяет бывшие попробуй ... наконец Блоки в Python. Это гарантирует, что код очистки выполняется. Например, он закрывает открытые файлы, прежде чем выходить из блока. Рассмотрим этот пример кода (при условии, что этот код хранится в файле с именем 'Code.py' ):

with open('code.py') as code:
    print(code.read())

Выход этого кода будет сам код (для Nerds: кусок кода, который генерирует сам, называется Quine):

''' OUTPUT
with open('code.py') as code:
    print(code.read())

'''

Неважно, что выходит не так внутри с Блок, Python закроет открытый файл перед перемещением в код. Таким образом, вам не нужно приложить код с попробуй ... кроме утверждение.

Одиночное выражение «с» оператором в одной строке

Проблема : Можете ли вы написать с Заявление в одной строке кода?

Решение : Да, вы можете написать с Заявление в одной строке кода, если корпус петли состоит только из одного утверждения:

with open('code.py') as code: print(code.read())

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

Упражнение : Следующий интерактивный код бросает ошибку, если вы запустите ее. Исправьте ошибку и запустите правильный код!

Многократное выражение «с» оператором в одной строке

Если тело состоит из нескольких утверждений, вы можете использовать съемку с разными утверждениями:

with open('code.py') as code:
    print('The code:')
    print(code.read())

Предыдущий код код становится:

with open('code.py') as code: print('The code:'); print(code.read())

Обратите внимание, что в этом конкретном случае семантика фактически меняется, потому что код читает свой собственный исходный файл! Но во всех других случаях семантика остается прежней.

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

Вложенные блоки вдавливания в одну строку «с ‘

Если вы знаете Учебники Finxter , вы также знаете, что я редко заключаю с таким утверждением “XYZ невозможен” Потому что в большинстве случаев это не так. Если вы сомневаетесь, можете ли вы сжать алгоритм в Одна линия кода – Не. Вы можете сжать все алгоритмы в одну строку!

В большинстве случаев вы можете избежать вложенных блоков, используя Понимание списка (а не для петли ) или Тернарный оператор (а не если блок).

Рассмотрим следующий пример с для петля внутри с блокировать:

with open('code.py') as code:
    for i in range(10):
        print(code.read())

Проблема : Один навес вложенный с блоком!

Неправильное решение : Запишите его в одну строку:

Правильное решение : Замените внутреннюю петлю с заявлением по пониманию списка!

with open('code.py') as code: [print(code.read()) for i in range(10)]

Хотя этот код работает и решает проблему, обратите внимание, что выбранный пример не имеет большого смысла. Файл читается только один раз – даже если вы разместите его в контур. Причина в том, что читатель файлов выполнен считывает файл после первой итерации. В последующих итерациях он только читает оставшиеся символы (нет), поэтому вывод не имеет 10x только 1x содержимое файла.

Куда пойти отсюда?

Достаточно теории, давайте познакомимся!

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

Практические проекты – это то, как вы обостряете вашу пилу в кодировке!

Вы хотите стать мастером кода, сосредоточившись на практических кодовых проектах, которые фактически зарабатывают вам деньги и решают проблемы для людей?

Затем станьте питоном независимым разработчиком! Это лучший способ приближения к задаче улучшения ваших навыков Python – даже если вы являетесь полным новичком.

Присоединяйтесь к моему бесплатным вебинаре «Как создать свой навык высокого дохода Python» и посмотреть, как я вырос на моем кодированном бизнесе в Интернете и как вы можете, слишком от комфорта вашего собственного дома.

Присоединяйтесь к свободному вебинару сейчас!

Python One-Liners Книга

Python Programmemers улучшит свои навыки информатики с этими полезными одноклассниками.

Python One-listers научит вас читать и писать «одноклассники»: краткие заявления полезных функций, упакованных в одну строку кода. Вы узнаете, как систематически распаковать и понимать любую строку кода Python и писать красноречие, мощно сжатый Python, как эксперт.

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

Используйте структуры данных для решения реальных проблем, такие как использование булевой индексации для поиска городов с загрязнением выше среднего Используйте Numpy Basics, такие как массив, форма, ось, тип, вещание, расширенная индексация, нарезка, сортировка, поиск, агрегация и статистика Рассчитайте базовую статистику многомерных массивов данных и алгоритмы K-означает для безоговорочного обучения Создайте более усовершенствованные регулярные выражения с помощью группировки и названных групп, отрицательные LookAeads, сбежавшие символы, пробелы, наборы символов (и наборы отрицательных символов) и жадные/негридические операторы Понимать широкий ассортимент

К концу книги вы узнаете, как писать Python в его самых утонченных, и создавать краткие, красивые куски «Python Art» в простой строке.

Получите свой Python One-Liners сейчас !!

Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python One-listers (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

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