Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 24, 2007 18:41:57

gen
От:
Зарегистрирован: 2007-02-19
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

какой-то глупый косяк

т.е. для элемента matrix = 1.0/4.0*(matrix_p + matrix_p + matrix_p + matrix_p)=
1/4(10+0+10+0)=5
в то время как matrix_p=0



Офлайн

#2 Фев. 24, 2007 18:58:45

Mkdir
Зарегистрирован: 2006-06-30
Сообщения: 211
Репутация: +  0  -
Профиль   Отправить e-mail  

какой-то глупый косяк

split(' ') можно (нужно) заменить на split().
По умолчанию будут сплитится значения разделённые пробелом, табами и прочими отступами.



Офлайн

#3 Фев. 24, 2007 20:11:24

gen
От:
Зарегистрирован: 2007-02-19
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

какой-то глупый косяк

>>split(' ') можно (нужно) заменить на split().
>>По умолчанию будут сплитится значения разделённые пробелом, табами и прочими отступами.

Спасибо, но пробле в том что почему-то не клонируктся объект-список, или я что-то неправильно понимаю!?



Офлайн

#4 Фев. 24, 2007 20:22:19

gen
От:
Зарегистрирован: 2007-02-19
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

какой-то глупый косяк

ух ты как оказывается все получается…
оказывается что способ b=a работает только для списков вида
a для многомерных списков объект клонируется не полностью,
те если меняются элементы вложенного списка в списке клоне, то меняются и элементы в его казалось бы независимом родителе(что мне кажется не совсем логично),

а как сделать 100% НЕЗАВИСИМЫЙ КЛОН????
и вообще как эффективно решить проблему???



Офлайн

#5 Фев. 24, 2007 20:26:33

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

какой-то глупый косяк

gen
а как сделать 100% НЕЗАВИСИМЫЙ КЛОН????
import copy
b = copy.deepcopy( a )



Офлайн

#6 Фев. 24, 2007 20:44:31

gen
От:
Зарегистрирован: 2007-02-19
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

какой-то глупый косяк

спасибо , заработало!
у меня еще один простой вопрос(на который я сам не смог пока найти ответа)
разве 0.0 это не false ?????
(эта проблема у меня возникла при делении маленьких чисел <1, т.к. операция % дает в этом случае вообще неадекватный результат я пользовался if(not(int(a/b)-a/b)) )



Офлайн

#7 Фев. 24, 2007 20:55:02

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

какой-то глупый косяк

gen
разве 0.0 это не false ?????
(эта проблема у меня возникла при делении маленьких чисел <1, т.к. операция % дает в этом случае вообще неадекватный результат я пользовался if(not(int(a/b)-a/b)) )
ничего не понятно:)



Офлайн

#8 Фев. 24, 2007 21:03:23

Mkdir
Зарегистрирован: 2006-06-30
Сообщения: 211
Репутация: +  0  -
Профиль   Отправить e-mail  

какой-то глупый косяк

gen
разве 0.0 это не false ?????
А должно быть? :)
0.0 - это float
0 - это int
False - это boolean

Единственное что их объединяет, так это одинаковое реагирование оператора if.



Офлайн

#9 Фев. 24, 2007 22:34:22

gen
От:
Зарегистрирован: 2007-02-19
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

какой-то глупый косяк

Да должно быть, т.к. в мануале написано что все числа отличные от 0 в условных конструкциях эквивалентны булевскому тру, соответственно 0 булевскому фалсу (ну как и в многих др языках) и там же написано, что 0=0.0, потому то мне и не понятно..



Офлайн

#10 Фев. 26, 2007 10:35:20

Viper
От:
Зарегистрирован: 2006-11-08
Сообщения: 137
Репутация: +  0  -
Профиль   Отправить e-mail  

какой-то глупый косяк

gen
Да должно быть, т.к. в мануале написано что все числа отличные от 0 в условных конструкциях эквивалентны булевскому тру, соответственно 0 булевскому фалсу (ну как и в многих др языках) и там же написано, что 0=0.0, потому то мне и не понятно..
А ты уверен что в результате получаешь именно 0.0, а не скажем 0.0000000001?



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version