Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/188: Рейтинг темы: голосов - 188, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 28.01.2020
Сообщений: 13

Замена функции print

07.02.2020, 15:47. Показов 42435. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подмените функцию print() так, чтобы она ПЕЧАТАЛА ВЕСЬ ТЕКСТ В ВЕРХНЕМ РЕГИСТРЕ. Реализовывать работу с именованными аргументами (sep, end, ...) не нужно

то есть присвоить функии print какую-то другую функцию
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.02.2020, 15:47
Ответы с готовыми решениями:

Три функции print() в ряд?
Нужно создать программу которая будет выводить три любых сообщений (трижды вызвать функцию print()), но все сообщения выведуться в одну...

Аргумент end к функции print
Я новичок, объясните пж, в чем проблема: a=input() print('The next number for the number'+a+'is'+str(int(a)+1)+sep=' '+end='.\n') ...

Вызов функции в одной строке с print
Здравствуйте! Подскажите, пожалуйста, как вызвать функцию, чтобы она вернула данные (я не уверен, что это так называется) в одной строке с...

10
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
07.02.2020, 16:07
Можно такой костыль использовать
Python
1
2
3
print_ = print
print = lambda *args: print_(' '.join(map(str.upper, args)))
print('text', 'asd')
Без костылей
Python
1
2
3
4
import sys
def print(*args):
    sys.stdout.write(' '.join(map(str.upper, args)))
print('asd', 'sad')
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
07.02.2020, 17:55
Цитата Сообщение от ioprst Посмотреть сообщение
Можно такой костыль использовать
Почему костыль? Нормально, сохраняем ссылку на оригинальный принт:
Python
1
2
3
4
5
_real_print = print
def print(*args):
    _real_print(*(i.upper() if isinstance(i, str) else i for i in args))
 
print('text', 1, 'fox')
Добавлено через 4 минуты
Python
1
2
3
4
5
6
7
8
9
import sys
 
_real_print = print
 
def print(*args, sep=' ', end='\n', file=sys.stdout, flush=False):
    args2 = (i.upper() if isinstance(i, str) else i for i in args)
    _real_print(*args2, sep=sep, end=end, file=file, flush=flush)
 
print('text', 1, 'fox', sep=':')
Добавлено через 3 минуты
Python
1
2
3
4
5
6
7
import sys
 
def print(*args, sep=' ', end='\n', file=sys.stdout, flush=False):
    args2 = (i.upper() if isinstance(i, str) else i for i in args)
    __builtins__.print(*args2, sep=sep, end=end, file=file, flush=flush)
 
print('text', 1, 'fox', sep=':')
Добавлено через 5 минут
Python
1
2
3
4
5
6
7
8
def d(func):
    def wrap(*args, **kwargs):
        args = (i.upper() if isinstance(i, str) else i for i in args)
        return func(*args, **kwargs)
    return wrap
 
print = d(print)
print('text', 1, 'fox', sep=':')
Добавлено через 1 минуту
Python
1
2
3
4
5
def print(*args, **kwargs):
    args = (i.upper() if isinstance(i, str) else i for i in args)
    __builtins__.print(*args, **kwargs)
 
print('text', 1, 'fox', sep=':')
1
67 / 64 / 3
Регистрация: 02.11.2019
Сообщений: 227
06.03.2020, 14:00
Python
1
2
3
4
5
6
original = print
 
 
def print(*args, **kwargs):
    args = (i.upper() if isinstance(i, str) else i for i in args)
    original(*args, **kwargs)
0
1 / 1 / 0
Регистрация: 14.03.2020
Сообщений: 3
06.05.2020, 21:44
print1 = print


def print(*a):
for i in a:
print1(i.upper(), end=' ')

Добавлено через 7 минут
Python
1
2
3
4
5
6
print1 = print
 
 
def print(*a):
    for i in a:
        print1(i.upper(), end=' ')
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
07.05.2020, 02:06
Цитата Сообщение от matmercs Посмотреть сообщение
то есть присвоить функции print какую-то другую функцию
Вы хотите, что бы при написании в коде print() выполнялась какая то другая функция вывода? Если Вы даете своей функции в качестве названия ключевое слово, каким является print, то это приводит к ошибкам и считается не правильным. Лутц пишет, что такая практика не допустима.

Добавлено через 8 минут
matmercs, Другое дело, когда идет вывод с использованием экземпляров класса. Тогда используются методы перегрузки операторов __str__ и __repr__.
Еще если не ошибаюсь, в данном случае можно использовать декораторы, которые добавляют некоторую логику, выполняемую перед работой базовой функции.
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
08.05.2020, 13:40
Zlotnikova,
Python
1
2
3
4
5
>>> print(42)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 5, in print
AttributeError: 'int' object has no attribute 'upper'
0
1 / 1 / 0
Регистрация: 14.03.2020
Сообщений: 3
08.05.2020, 14:53
Рыжий Лис, извиняюсь, тогда так

Python
1
2
3
4
5
6
print1 = print
 
 
def print(*a):
    for i in a:
        print1(str(i).upper(), end=' ')
0
Эксперт Python
 Аватар для unfindable_404
693 / 471 / 204
Регистрация: 22.03.2020
Сообщений: 1,051
08.05.2020, 15:00
Zlotnikova, тогда уж
Python
1
2
3
4
5
print1 = print
 
 
def print(*a):
    print1(*[str(i).upper() for i in a])
0
0 / 0 / 0
Регистрация: 15.02.2024
Сообщений: 2
28.04.2024, 08:40
Python
1
2
3
4
5
real_print = print
 
 
def print(*text):
    real_print(*map(lambda x: x.upper() if type(x) is str else x, text))
0
71 / 55 / 24
Регистрация: 28.03.2016
Сообщений: 171
28.04.2024, 09:52
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# Как декоратор
def newprint(func):
    import sys
    def wrapper(*args, sep=' ', end='\n', file=sys.stdout, flush=False):
        for i in args:
            exprint(str(i).upper(), sep='', end=sep, file=file, flush=flush) # Тут в end подсунут исходный sep
        exprint('', sep='', end=end, file=file, flush=flush) # Это чтобы end тоже сработал
    return wrapper
 
exprint = print
print = newprint(print) # Оборачиваю вручную
 
# Использование
print('a', 2)  # A 2
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.04.2024, 09:52
Помогаю со студенческими работами здесь

Вывод текста в функции без print()
Файл заказ функция выполнить не как не пойму как сделать вывод без использования print() мой вариант + исходники на гугл диске

Аргумент flush функции print
Не совсем понимаю зачем этот аргумент и как он работает, по идее он должен очищать файл, в который мы выводим, тогда вот этот код: import...

А почему ошибка, что функции print и read не определены в функции main()?
Что-то не понимаю. Они определены в заголовочном файле. А подчеркивается красным что нет.... #include &lt;iostream&gt; #include...

Is there a print function to specify which part of asp page user can print from the browser?
Is there a print function to specify which part of asp page user can print from the browser???? Thanks

Вызов функции print
Помогите, пожалуйста, разобраться. Предположим, у меня есть функция с 3 параметрами (defun ПРИМЕР (СПИСОК А В)......). Функция...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru