Ошибка при использовании метода setPixel класса QImage, Python |
Здравствуйте, гость ( Вход | Регистрация )
Ошибка при использовании метода setPixel класса QImage, Python |
zuze |
22.3.2013, 9:09
Сообщение
#1
|
Участник Группа: Участник Сообщений: 211 Регистрация: 4.11.2012 Пользователь №: 3589 Спасибо сказали: 0 раз(а) Репутация: 0 |
Ругаеться на строчку
Ошибка: QColor(Qt.GlobalColor): argument 1 has unexpected type 'list' QColor(int): argument 1 has unexpected type 'list' QColor(QVariant): too many arguments QColor(): too many arguments QColor(int, int, int, int alpha=255): argument 1 has unexpected type 'list' QColor(QString): argument 1 has unexpected type 'list' QColor(QColor): argument 1 has unexpected type 'list' Я пытался в интернете или в книгах найти примеры, но что-то не нашёл. Подскажите пожалуйста, как поправить? |
|
|
lanz |
22.3.2013, 9:28
Сообщение
#2
|
Старейший участник Группа: Участник Сообщений: 690 Регистрация: 28.12.2012 Пользователь №: 3660 Спасибо сказали: 113 раз(а) Репутация: 8 |
Ой ой ой
Вот это зачем? read читает число байт равное своему аргументу. i+j там совсем не к месту. bf это же список списков, элементами bf являются списки и только их элементами значения
|
|
|
zuze |
22.3.2013, 9:36
Сообщение
#3
|
Участник Группа: Участник Сообщений: 211 Регистрация: 4.11.2012 Пользователь №: 3589 Спасибо сказали: 0 раз(а) Репутация: 0 |
Вот это зачем? read читает число байт равное своему аргументу. i+j там совсем не к месту. Так как мне надо поэлементно из файла занести данные в список. А потом эти значения занасить в метод setPixel поэлементно. Сделал так:
Ошибка: IndexError: list index out of range Сообщение отредактировал zuze - 22.3.2013, 9:49 |
|
|
lanz |
22.3.2013, 10:33
Сообщение
#4
|
Старейший участник Группа: Участник Сообщений: 690 Регистрация: 28.12.2012 Пользователь №: 3660 Спасибо сказали: 113 раз(а) Репутация: 8 |
Цитата read читает число байт равное своему аргументу Соответственно read(i+j) читает i+j байт. Вряд ли это то что нужно. EDIT: Да, не работает, потому что i идет в обратном порядке 491 - 0. Индекс вообще по хорошему не нужен:
Сообщение отредактировал lanz - 22.3.2013, 10:39 |
|
|
zuze |
22.3.2013, 11:04
Сообщение
#5
|
Участник Группа: Участник Сообщений: 211 Регистрация: 4.11.2012 Пользователь №: 3589 Спасибо сказали: 0 раз(а) Репутация: 0 |
Да, не работает, потому что i идет в обратном порядке 491 - 0. Сделал, как Вы написали, в результате выводитсмя ошибка: TypeError: arguments did not match any overloaded call: QColor(Qt.GlobalColor): argument 1 has unexpected type 'str' QColor(int): argument 1 has unexpected type 'str' QColor(QVariant): too many arguments QColor(): too many arguments QColor(int, int, int, int alpha=255): argument 1 has unexpected type 'str' QColor(QString): too many arguments QColor(QColor): argument 1 has unexpected type 'str' Индекс вообще по хорошему не нужен Почему не нужен, ведь от "i" зависит следующий код
Может быть я не очень описал свою задачу (Я её опиушу на примере Си, так как там есть двухмерные массивы): У меня есть глобальный двухмерный массив "int buffer[492][720]" и я в него должне занести данные по элементно из двоичного файла. Сообщение отредактировал zuze - 22.3.2013, 11:28 |
|
|
lanz |
22.3.2013, 11:39
Сообщение
#6
|
Старейший участник Группа: Участник Сообщений: 690 Регистрация: 28.12.2012 Пользователь №: 3660 Спасибо сказали: 113 раз(а) Репутация: 8 |
Надо преобразовать считываемое значение в целое:
Индекс не нужен в том смысле что не обязательно обращатся к массиву по индексу, мы ведь читаем цвет на этой же итерации. |
|
|
zuze |
22.3.2013, 12:18
Сообщение
#7
|
Участник Группа: Участник Сообщений: 211 Регистрация: 4.11.2012 Пользователь №: 3589 Спасибо сказали: 0 раз(а) Репутация: 0 |
|
|
|
lanz |
22.3.2013, 15:02
Сообщение
#8
|
Старейший участник Группа: Участник Сообщений: 690 Регистрация: 28.12.2012 Пользователь №: 3660 Спасибо сказали: 113 раз(а) Репутация: 8 |
А что за файл, что в нем содержится?
И в каком формате открыт файл, в текстовом или двоичном? Сообщение отредактировал lanz - 22.3.2013, 15:03 |
|
|
zuze |
22.3.2013, 15:09
Сообщение
#9
|
Участник Группа: Участник Сообщений: 211 Регистрация: 4.11.2012 Пользователь №: 3589 Спасибо сказали: 0 раз(а) Репутация: 0 |
|
|
|
lanz |
22.3.2013, 15:28
Сообщение
#10
|
Старейший участник Группа: Участник Сообщений: 690 Регистрация: 28.12.2012 Пользователь №: 3660 Спасибо сказали: 113 раз(а) Репутация: 8 |
Проще всего использовать модуль struct
http://docs.python.org/2/library/struct.html Например
|
|
|
Текстовая версия | Сейчас: 22.11.2024, 18:22 |