PySide и QTextStream |
Здравствуйте, гость ( Вход | Регистрация )
PySide и QTextStream |
Litkevich Yuriy |
29.5.2011, 11:52
Сообщение
#1
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Что-то я не соображу как писать в поток (QTextStrem).
Операторов работы с потоком в Питоне вроде нет. В официальной документации пример остался от Си++ ??? |
|
|
igor_bogomolov |
29.5.2011, 13:06
Сообщение
#2
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
У меня нет PySide (надо будет тоже скачать, посмотреть что получилось), поэтому проверить не могу. Но судя по документации все должно работать.
И в документации пример именно на python, приглядись к нему по внимательнее. Это питон в чистом виде. Все будет работать.Потому что функции вида (смотри список методов в приведённой тобой ссылке) это как раз и есть перегруженные операторы потоков (<< и >>)Вот аналогичный тестовый пример на PyQt4, вполне рабочий
|
|
|
Litkevich Yuriy |
29.5.2011, 15:24
Сообщение
#3
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
перегруженные операторы потоков я в бумажной книжке по питону смотрел, там эти операторы обозваны как операторы сдвига, да и на названия методов соответсвующие.Вообще у меня они действительно работают. Но походу это не правильное решение в PySide/PyQt, т.к. противоречит самому Питону.
|
|
|
igor_bogomolov |
29.5.2011, 17:46
Сообщение
#4
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
|
|
|
Litkevich Yuriy |
29.5.2011, 19:27
Сообщение
#5
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Не вижу ни какого противоречия. В python так же как и в С++ есть перегрузка операторов. перегрузка не означает, что можно делать так, чтобы оператор делал не свою работу.def __lshift__ (s) def __*сдвиг__ (...)def __rshift__ (, arg__2 вот его смысл. Т.е. плохо, когда логика оператора нарушается |
|
|
Текстовая версия | Сейчас: 19.4.2024, 14:35 |