HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-21
1 <p><a>#статьи</a></p>
1 <p><a>#статьи</a></p>
2 <ul><li>9 янв 2025</li>
2 <ul><li>9 янв 2025</li>
3 <li>0</li>
3 <li>0</li>
4 </ul><p>Больше, чем просто "Hello, world".</p>
4 </ul><p>Больше, чем просто "Hello, world".</p>
5 <p>Иллюстрация: Оля Ежак для Skillbox Media</p>
5 <p>Иллюстрация: Оля Ежак для Skillbox Media</p>
6 <p>Программист, консультант, специалист по документированию. Легко и доступно рассказывает о сложных вещах в программировании и дизайне.</p>
6 <p>Программист, консультант, специалист по документированию. Легко и доступно рассказывает о сложных вещах в программировании и дизайне.</p>
7 <p>Все курсы по программированию на Python начинаются с изучения функции print(). С её помощью разработчики могут выводить данные на экран, а новички - печатать в консоли легендарную фразу Hello, world. А ещё в print() есть аргументы, с помощью которых можно гибко управлять выводом.</p>
7 <p>Все курсы по программированию на Python начинаются с изучения функции print(). С её помощью разработчики могут выводить данные на экран, а новички - печатать в консоли легендарную фразу Hello, world. А ещё в print() есть аргументы, с помощью которых можно гибко управлять выводом.</p>
8 <p>В этой статье рассказываем про функцию print(), её аргументы и показываем, как ими пользоваться.</p>
8 <p>В этой статье рассказываем про функцию print(), её аргументы и показываем, как ими пользоваться.</p>
9 <p><strong>Содержание</strong></p>
9 <p><strong>Содержание</strong></p>
10 <ul><li><a>Зачем нужна функция print()</a></li>
10 <ul><li><a>Зачем нужна функция print()</a></li>
11 <li><a>Аргумент objects функции print() в Python</a></li>
11 <li><a>Аргумент objects функции print() в Python</a></li>
12 <li><a>Аргумент sep функции print() в Python</a></li>
12 <li><a>Аргумент sep функции print() в Python</a></li>
13 <li><a>Аргумент end функции print() в Python</a></li>
13 <li><a>Аргумент end функции print() в Python</a></li>
14 <li><a>Аргумент file функции print() в Python</a></li>
14 <li><a>Аргумент file функции print() в Python</a></li>
15 <li><a>Аргумент flush функции print() в Python</a></li>
15 <li><a>Аргумент flush функции print() в Python</a></li>
16 </ul><p>print() - встроенная в Python функция, с помощью которой можно вывести текст в консоль. Также с её помощью можно контролировать форматирование вывода, управлять разделителями между элементами, изменять символы окончания строк и перенаправлять вывод данных в файл.</p>
16 </ul><p>print() - встроенная в Python функция, с помощью которой можно вывести текст в консоль. Также с её помощью можно контролировать форматирование вывода, управлять разделителями между элементами, изменять символы окончания строк и перенаправлять вывод данных в файл.</p>
17 <p>Рассмотрим, как работает функция print() в Python и выведем в консоль классическую для программистских гайдов фразу "Hello, world!". Синтаксис вызова функции выглядит следующим образом:</p>
17 <p>Рассмотрим, как работает функция print() в Python и выведем в консоль классическую для программистских гайдов фразу "Hello, world!". Синтаксис вызова функции выглядит следующим образом:</p>
18 print("Hello, world!")<p>В ней print() - название функции, а Hello, world! - строка, которую надо вывести в консоль. Если выполнить код, то в терминале появится фраза "Hello, world!".</p>
18 print("Hello, world!")<p>В ней print() - название функции, а Hello, world! - строка, которую надо вывести в консоль. Если выполнить код, то в терминале появится фраза "Hello, world!".</p>
19 <p>У функции print() есть дополнительные аргументы - значения, с помощью которых можно модифицировать вывод данных. Их следует передавать во время вызова. С ними синтаксис print() выглядит так:</p>
19 <p>У функции print() есть дополнительные аргументы - значения, с помощью которых можно модифицировать вывод данных. Их следует передавать во время вызова. С ними синтаксис print() выглядит так:</p>
20 print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)<p>В ней:</p>
20 print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)<p>В ней:</p>
21 <ul><li>objects - один или несколько объектов, которые нужно вывести;</li>
21 <ul><li>objects - один или несколько объектов, которые нужно вывести;</li>
22 <li>sep - разделитель между объектами (по умолчанию пробел);</li>
22 <li>sep - разделитель между объектами (по умолчанию пробел);</li>
23 <li>end - символ завершения строки (по умолчанию перевод строки);</li>
23 <li>end - символ завершения строки (по умолчанию перевод строки);</li>
24 <li>file - объект файла, в который направлен вывод;</li>
24 <li>file - объект файла, в который направлен вывод;</li>
25 <li>flush - принудительный сброс буфера вывода.</li>
25 <li>flush - принудительный сброс буфера вывода.</li>
26 </ul><p>Рассмотрим подробно, как устроен каждый из аргументов и как всё это можно использовать на практике.</p>
26 </ul><p>Рассмотрим подробно, как устроен каждый из аргументов и как всё это можно использовать на практике.</p>
27 <p>Аргумент objects в функции - это то, что мы хотим вывести на экран. Выводить можно:</p>
27 <p>Аргумент objects в функции - это то, что мы хотим вывести на экран. Выводить можно:</p>
28 <ul><li><strong>Строки.</strong>Любой текст, заключённый в одинарные или двойные кавычки:</li>
28 <ul><li><strong>Строки.</strong>Любой текст, заключённый в одинарные или двойные кавычки:</li>
29 </ul>print("Ехал грека через реку") # Ехал грека через реку<ul><li><strong>Числа.</strong>Целое или дробное число:</li>
29 </ul>print("Ехал грека через реку") # Ехал грека через реку<ul><li><strong>Числа.</strong>Целое или дробное число:</li>
30 </ul>print(42) # 42 print(3.14) # 3.14<ul><li><strong>Переменные.</strong>Имя переменной, в которой хранится какое-либо значение:</li>
30 </ul>print(42) # 42 print(3.14) # 3.14<ul><li><strong>Переменные.</strong>Имя переменной, в которой хранится какое-либо значение:</li>
31 </ul>name = "Алёна" print(name) # Алёна<ul><li><strong>Выражение.</strong>Любое математическое или логическое выражение, которое Python может вычислить:</li>
31 </ul>name = "Алёна" print(name) # Алёна<ul><li><strong>Выражение.</strong>Любое математическое или логическое выражение, которое Python может вычислить:</li>
32 </ul>print(2 + 2) # 4<ul><li><strong>Список, кортеж или словарь.</strong>Эти структуры данных будут выведены в виде строки, представляющей их содержимое:</li>
32 </ul>print(2 + 2) # 4<ul><li><strong>Список, кортеж или словарь.</strong>Эти структуры данных будут выведены в виде строки, представляющей их содержимое:</li>
33 </ul>print([1, 2, 3]) # [1, 2, 3]<p>В функцию print() можно передать любое количество аргументов objects. Python выведет их в том порядке, в котором получил. Благодаря этому можно печатать в консоль составные строки, например:</p>
33 </ul>print([1, 2, 3]) # [1, 2, 3]<p>В функцию print() можно передать любое количество аргументов objects. Python выведет их в том порядке, в котором получил. Благодаря этому можно печатать в консоль составные строки, например:</p>
34 age = 30 city = "Алматы" print("Мне", age, "лет, и я живу в", city) # Мне 30 лет, и я живу в Алматы<p>Аргумент sep определяет, какой разделитель Python будет использовать между элементами функции print(). По умолчанию ставится пробел:</p>
34 age = 30 city = "Алматы" print("Мне", age, "лет, и я живу в", city) # Мне 30 лет, и я живу в Алматы<p>Аргумент sep определяет, какой разделитель Python будет использовать между элементами функции print(). По умолчанию ставится пробел:</p>
35 print("Мир", "Труд", "Май") # Вывод: Мир Труд Май<p>Но можно поставить, например, восклицательный знак:</p>
35 print("Мир", "Труд", "Май") # Вывод: Мир Труд Май<p>Но можно поставить, например, восклицательный знак:</p>
36 print("Мир", "Труд", "Май", sep="! ") # Вывод: Мир! Труд! Май<p>Важно отметить, что sep вставляет разделитель только между объектами, поэтому в конце нашей строки восклицательного знака нет.</p>
36 print("Мир", "Труд", "Май", sep="! ") # Вывод: Мир! Труд! Май<p>Важно отметить, что sep вставляет разделитель только между объектами, поэтому в конце нашей строки восклицательного знака нет.</p>
37 <p>sep можно использовать и для "склеивания" нескольких объектов в одну строку:</p>
37 <p>sep можно использовать и для "склеивания" нескольких объектов в одну строку:</p>
38 print("a", "b", "c", sep="") # Вывод: abc<p>Аргумент end похож на sep, но ставит знак не между объектами, а после них. По умолчанию в конце каждой строки Python ставит символ перевода строки (\n).</p>
38 print("a", "b", "c", sep="") # Вывод: abc<p>Аргумент end похож на sep, но ставит знак не между объектами, а после них. По умолчанию в конце каждой строки Python ставит символ перевода строки (\n).</p>
39 <p>С помощью end можно добавить любой знак в конце строки:</p>
39 <p>С помощью end можно добавить любой знак в конце строки:</p>
40 print("Мир", "Труд", "Май", end="!") # Вывод: Мир Труд Май! print("Мир", "Труд", "Май", sep="! ", end="!") # Вывод: Мир! Труд! Май!<p>Аргумент file позволяет перенаправить вывод данных не в консоль, а в указанный файл. Это полезно, когда нужно записать результаты работы программы в файл, чтобы их потом как-нибудь использовать. Например, с помощью вывода в файл можно сохранять логи выполнения программы или создавать отчёты.</p>
40 print("Мир", "Труд", "Май", end="!") # Вывод: Мир Труд Май! print("Мир", "Труд", "Май", sep="! ", end="!") # Вывод: Мир! Труд! Май!<p>Аргумент file позволяет перенаправить вывод данных не в консоль, а в указанный файл. Это полезно, когда нужно записать результаты работы программы в файл, чтобы их потом как-нибудь использовать. Например, с помощью вывода в файл можно сохранять логи выполнения программы или создавать отчёты.</p>
41 <p>Перед выводом данных в файл надо открыть сам файл. Для этого используют следующую конструкцию:</p>
41 <p>Перед выводом данных в файл надо открыть сам файл. Для этого используют следующую конструкцию:</p>
42 with open("output.txt", "w", encoding="utf-8") as f:<p>В ней мы вызываем функцию open() с помощью оператора with. В качестве аргументов функции указываем название файла ("output.txt"), режим работы ("w") и кодировку (encoding="utf-8").</p>
42 with open("output.txt", "w", encoding="utf-8") as f:<p>В ней мы вызываем функцию open() с помощью оператора with. В качестве аргументов функции указываем название файла ("output.txt"), режим работы ("w") и кодировку (encoding="utf-8").</p>
43 <p>Режим работы "w" означает, что мы будем записывать данные в файл с перезаписью содержимого, а если в папке проекта не будет документа с указанным названием, то Python создаст его. Разработчики также иногда используют режим работы "a". С его помощью можно записать новые данные в конец файла без удаления текущего содержимого.</p>
43 <p>Режим работы "w" означает, что мы будем записывать данные в файл с перезаписью содержимого, а если в папке проекта не будет документа с указанным названием, то Python создаст его. Разработчики также иногда используют режим работы "a". С его помощью можно записать новые данные в конец файла без удаления текущего содержимого.</p>
44 <p>После этого в блоке with можно указывать данные, которые следует записать в файл:</p>
44 <p>После этого в блоке with можно указывать данные, которые следует записать в файл:</p>
45 with open("output.txt", "w", encoding="utf-8") as f: print("Эту строку Python запишет в файл output.txt", file=f) print("Вторая строка тоже будет в файле", file=f)<p>У функции print() есть буфер, в котором Python собирает данные и выводит их чуть позже - например, после завершения строки. Этот механизм добавили для увеличения эффективности кода, чтобы программа не тратила ресурсы на безостановочный вывод данных. В некоторых проектах данные надо вывести сразу и не задерживать их в буфере - например, если вы хотите одновременно печатать строки и редактировать их.</p>
45 with open("output.txt", "w", encoding="utf-8") as f: print("Эту строку Python запишет в файл output.txt", file=f) print("Вторая строка тоже будет в файле", file=f)<p>У функции print() есть буфер, в котором Python собирает данные и выводит их чуть позже - например, после завершения строки. Этот механизм добавили для увеличения эффективности кода, чтобы программа не тратила ресурсы на безостановочный вывод данных. В некоторых проектах данные надо вывести сразу и не задерживать их в буфере - например, если вы хотите одновременно печатать строки и редактировать их.</p>
46 <p>Буфер функции print() можно отключить с помощью аргумента flush:</p>
46 <p>Буфер функции print() можно отключить с помощью аргумента flush:</p>
47 print("Эту строку Python напечатает моментально", flush=True)<p>Например, с помощью аргумента flush можно реализовать анимацию загрузки в терминале:</p>
47 print("Эту строку Python напечатает моментально", flush=True)<p>Например, с помощью аргумента flush можно реализовать анимацию загрузки в терминале:</p>
48 import time print("Загрузка", end="", flush=True) for i in range(3): time.sleep(1) print(".", end="", flush=True)<ul><li>Функция print() - встроенная в Python функция, с помощью которой можно выводить данные в консоль или записывать в файл.</li>
48 import time print("Загрузка", end="", flush=True) for i in range(3): time.sleep(1) print(".", end="", flush=True)<ul><li>Функция print() - встроенная в Python функция, с помощью которой можно выводить данные в консоль или записывать в файл.</li>
49 <li>У функции print() есть аргументы: sep устанавливает разделитель между объектами, end устанавливает символ завершения строки, file направляет вывод в файл, flush управляет буфером функции, а objects - это то, что мы выводим.</li>
49 <li>У функции print() есть аргументы: sep устанавливает разделитель между объектами, end устанавливает символ завершения строки, file направляет вывод в файл, flush управляет буфером функции, а objects - это то, что мы выводим.</li>
50 </ul><p>Python для всех</p>
50 </ul><p>Python для всех</p>
51 <p>Вы освоите Python на практике и создадите проекты для портфолио - телеграм-бот, веб-парсер и сайт с нуля. А ещё получите готовый план выхода на удалёнку и фриланс. Спикер - руководитель отдела разработки в "Сбере".</p>
51 <p>Вы освоите Python на практике и создадите проекты для портфолио - телеграм-бот, веб-парсер и сайт с нуля. А ещё получите готовый план выхода на удалёнку и фриланс. Спикер - руководитель отдела разработки в "Сбере".</p>
52 <p><a>Пройти бесплатно</a></p>
52 <p><a>Пройти бесплатно</a></p>
53 <a><b>Бесплатный курс по разработке на Python ➞</b>Пройдите бесплатный курс по Python и создайте с нуля телеграм-бот, веб-парсер и сайт. Спикер - руководитель отдела разработки в "Сбере". Пройти курс</a>
53 <a><b>Бесплатный курс по разработке на Python ➞</b>Пройдите бесплатный курс по Python и создайте с нуля телеграм-бот, веб-парсер и сайт. Спикер - руководитель отдела разработки в "Сбере". Пройти курс</a>