Найти - Пользователи
Полная версия: Несложные вопросы по Python
Начало » Python для экспертов » Несложные вопросы по Python
1 2
bialix
поддерживаю Андрея Светлова. Я юзаю FAR+FTE.

пару ссылок по отладчику pdb:

http://www.ferg.org/papers/debugging_in_python.html
http://www.onlamp.com/pub/a/python/2005/09/01/debugger.html

Вторая ссылка мне помогла въехать в это дело и проникнуться.
Камикадзе
Выполнение кода:

 MatrC[i,j] = (MainMatr[i,j] - Summ)/MatrD[i,i]
(где MatrC, MatrD и MainMatr - квадратные матрицы вещественных чисел одного порядка (использую модуль numpy))
приводит к ошибке:
TypeError: ‘numpy.float64’ object is unsubscriptable

Как понимаю, питоу не нравится, что я ставлю в знаменатель 64-битовое вещественное число. Каким образом это можно обыграть, если нужно, чтобы число было именно вещественным? (Решаю систему линейных уравнений по схеме Халецкого)
Андрей Светлов
Нет. Питон пишет, что ты у своего float64 пытаешься взять скобки.
Типа
i = 3.14 #float64
i
TypeError: ‘numpy.float64’ object is unsubscriptable
Ошибка в алгоритме. Проверь типы переменных - type(MatrD)

unsubscriptable - это тогда, когда у объекта берут индекс, или если по русски - пишут obj, а obj - простой тип, и о квадрантых скобках ничего не знает.
nss
Да нет, он имеет в виду, что к объекту типа numpy.float64 не может быть применена операция индексации

Простой пример:
>>> 1[20]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'int' object is unsubscriptable
Андрей Светлов
А я не о том пытался писать? :(
Камикадзе
Хм…
У меня выше в этой же программе есть код, который не вызывает ошибки:
 MatrC[0,i] = MainMatr[0,i]/MatrD[0,0]
Ладно, утро вечера мудренее. С утра буду разбираться с отладчиком.
Камикадзе
В общем все со мной понятно. В предыдущем цикле (который я не приводил тут) я забыл проиндексировать матрицу (вместо MatrD = я написал MatrD = ). После исправления этой ошибки все встало на свои места.
nss
Андрей Светлов
А я не о том пытался писать? :(
Мы одновременно об одном и том же написали. :)
pythonwin
Андрей Светлов
Итак, длинный ответ на тему необходимости IDE.
насчет IDE - попробовал много IDE - пока остановлися на kate, т.к:
- подсветка систаксиса
- возможность легко и просто настраивать “горячие клавиши”
- есть обзор классов и глобальных переменных
- работа с нескольким файлами через вкладки
- сохранение отступов
- есть проводник
- открывается быстро и не тормозит при работе
- предлагает на выбор слова из текста
- сохранение порядок вкладок и открытые файлы в ссесии
- проверка орфографии

минусы:
- сохранение отступов не умное как в IDLE питона - критично для логических строк и особенно в списках и словарях
- когда отрыто окно с kate, то при щелчке на файл он открывается в новом окне, а не в новой вкладке, хотя может и это можно победить :)
- нет синтаксической проверки питоновского кода
- нет подсказок по стандартным функциям и классам, а также по “внешним” - джанго, ТГ, sqlobject и т.д.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB