С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753

Ищу модуль совместимости print между Python 3 и 2

03.01.2020, 06:56. Показов 2510. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Знает ли кто нибудь модуль, который делает возможным в третьем Python не добавлять скобки для print для кода из Python 2.x? Время от времени учусь по книжке для второй версии и копирую оттуда код для выполнения и возится каждый раз со скобками не удобно. Можно в принципе изменить строку в Path, однако может быть есть вариант в Pypi?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.01.2020, 06:56
Ответы с готовыми решениями:

print(*rr) Python 2.7
здравствуйте на строку print(*rr) в Python 2.7 ругается, как оно ранее было?, чем заменить?

Зависает модуль tkinter при использовании модуль Time || python
По приколу решил создать клик тест на питоне. При этом использовал два модуля tkinter для красоты и time для таймера. Но столкнулся с...

Python. Вывести в print все литералы
Нужно в print вывести следующий текст, сохранив все скобки и кавычки: @powershell -NoProfile -ExecutionPolicy unrestricted -Command...

22
1293 / 677 / 367
Регистрация: 07.01.2019
Сообщений: 2,301
03.01.2020, 08:24
Цитата Сообщение от supmener Посмотреть сообщение
Знает ли кто нибудь модуль, который делает возможным в третьем Python не добавлять скобки для print для кода из Python 2.x?
Нет такого модуля, используйте 2to3 https://docs.python.org/3.8/library/2to3.html
1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753
03.01.2020, 08:50  [ТС]
А как 2to3 подключать автоматически к файлам? То есть у меня есть файл в редакторе, в котором изучаю определенную тему (сейчас учу списки) и копирую туда из книги фрагменты по очереди и запускаю. Может что то куда то написать, чтобы автоматически преобразование происходило?
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
03.01.2020, 08:52
Цитата Сообщение от supmener Посмотреть сообщение
Время от времени учусь по книжке для второй версии
Возьми книгу по третьему питону.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753
03.01.2020, 09:03  [ТС]
В книге по второму очень подробно и понятно расписано, поэтому некоторые темы сначала учу по одной маленькой книжке по третьей версии, а некоторые сложные темы в книге по второму.
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
03.01.2020, 09:06
Цитата Сообщение от supmener Посмотреть сообщение
В книге по второму очень подробно и понятно расписано
Что за книга?
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753
03.01.2020, 09:10  [ТС]
Hello World называется. По ней функции изучал после того, как не совсем понял по первой книге.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.01.2020, 09:36
supmener, не в обиду, но похоже, что ты и по второй не особо фтыкаешь. Судя по последним темам.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753
03.01.2020, 09:39  [ТС]
По функциям задавал вопросы перед чтением книги по второму.
0
 Аватар для Semen-Semenich
5222 / 3469 / 1173
Регистрация: 21.03.2016
Сообщений: 8,295
03.01.2020, 13:32
tooru, напиши сам такой модуль. если в строке есть print то значить после print ставишь скобку и в конце строки
до:
Python
1
2
a = 'Hello World'
print a
обработка:
Python
1
2
3
4
5
6
7
8
9
10
with open('test.py') as f:
    data = f.readlines()
with open('test.py', 'w') as f:
    for line in data:
        if 'print' in line:
            line = line.strip().split()
            line.insert(line.index('print')+1, '(')
            line.append(')\n')
            line = ''.join(line)
        f.write(line)
после :
Python
1
2
a = 'Hello World'
print(a)
2
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
03.01.2020, 13:53
Цитата Сообщение от Semen-Semenich Посмотреть сообщение
напиши сам такой модуль
…и осознай, что результирующий код невалиден, поскольку в строках с print пропадают отступы. И код задевает строки, где слово print встречается в комментариях и строковых литералах. И еще некорректно обрабатываются многострочные конструкции. И даже после исправления этого вероятно останутся баги.
0
 Аватар для Semen-Semenich
5222 / 3469 / 1173
Регистрация: 21.03.2016
Сообщений: 8,295
03.01.2020, 13:59
0x10, это же не панацея а просто пример ключевая фраза 'напиши сам такой модуль' сто раз проверив и исправив все баги. он же учится программировать так чем не задание?
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
03.01.2020, 14:30
Лучший ответ Сообщение было отмечено Рыжий Лис как решение

Решение

Python
1
2
3
4
5
6
7
8
Python 2.7.12 (v2.7.12:d33e0cf91556, Jun 27 2016, 15:19:22) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> print(1,2)
(1, 2)
>>> from __future__ import print_function
>>> print(1,2)
1 2
>>>
Добавлено через 1 минуту
Цитата Сообщение от supmener Посмотреть сообщение
модуль совместимости
Это встроенный __future__ который добавляет возможности 3-го Python - во 2-ой.
Задним числом, так сказать.

Добавлено через 2 минуты
Обратного варианта - чтобы синтаксис второго Python работал в третьем - нет.
1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753
04.01.2020, 07:04  [ТС]
При просмотре книги автора Мэтиз Изучаем Python
заметил, что в книге Hello World тоже не все нужное по спискам написано.
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
04.01.2020, 07:06
Цитата Сообщение от supmener Посмотреть сообщение
не все нужное по спискам написано.
Чего конкретно не хватает?
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,753
04.01.2020, 07:12  [ТС]
sorted и копирования списков через [:]. Пока еще не все прочитал, дошел до кортежей.

Добавлено через 1 минуту
возможно ещё работа со списками через list и range

Добавлено через 2 минуты
еще генератора списков
0
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
04.01.2020, 07:20
Цитата Сообщение от supmener Посмотреть сообщение
sorted и копирования списков через [:]
Официальная документация в помощь.
sorted
Common Sequence Operations

Добавлено через 5 минут
Цитата Сообщение от supmener Посмотреть сообщение
еще генератора списков
«Hello, World» — детская книга. При объяснении генераторов списков уместна (хотя и необязательна) отсылка к нотации из теории множеств, и ничего удивительного, что они не упоминаются.
1
 Аватар для GulgDev
132 / 118 / 29
Регистрация: 09.07.2019
Сообщений: 1,071
29.01.2020, 17:36
Всё гораздо проще:
Python
1
2
import sys
sys.stdout.write('Hello world!')
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
29.01.2020, 18:02
Hyppoprogramm,
Ага, и менять во всем коде, где 100500 принтов на это?
0
 Аватар для GulgDev
132 / 118 / 29
Регистрация: 09.07.2019
Сообщений: 1,071
29.01.2020, 18:10
Garry Galler, ну тогда
Python
1
2
import sys, builtins
builtins.print = sys.stdout.write
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.01.2020, 18:10
Помогаю со студенческими работами здесь

python: command not found на команду print
Всем привет уважаемые программисты и разработчики:victory:. Начал изучать языки программирования, в частности Python, и споткнулся с самого...

Python Подскажите как сделать переход от ответа к строке print ?
print(123) print("Привет тебе дорогой") print("Как твои дела ?") number = 5 name= input( "Введите свое имя ") age = input (...

Как осуществить вывод картинки функцией print() символами в python
Вот пример нужных строк

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

Ищу прошивку на модуль управления и модуль индикации стиральной машины Electrolux EWT1062TDW Прод. номер 913101358 04, Попала вода на фишку соединения индикации с модулем управления . Корот
Попала вода на фишку соединения индикации с модулем управления . Коротнул процессор STM8S207RBT6C . Есть новый проц есть программатор нужна...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru