@ru_python

Страница 3251 из 9768
Tigran
19.07.2017
13:32:23
а запускаете в консольке? в один процесс?
сейчас да, но мы работаем над этим

Aleksandr
19.07.2017
13:33:03
сейчас да, но мы работаем над этим
а какие мысли? куда смотрите?

Tigran
19.07.2017
13:33:20
Aragaer
19.07.2017
13:48:51
я nose использую

Google
Aragaer
19.07.2017
13:49:19
unittest + nose

одно время использовал еще и behave к этому делу, но оно скорее ортогонально

Aleksandr
19.07.2017
13:49:39
я nose использую
nose2? или nosetests?

Aragaer
19.07.2017
13:51:24
просто nosetests

на днях увидел, что существует nose2, но не стал пока смотреть на него

Artem
19.07.2017
13:52:27
я использовал nose

Aleksandr
19.07.2017
13:52:29
на днях увидел, что существует nose2, но не стал пока смотреть на него
я слышал что он не очень развивается, но два года назад он хорошо выглядел

Aragaer
19.07.2017
13:53:50
ну просто вот я тут сел писать код, открыл текстовый файл и написал import unittest

А когда надо было это запустить, то pip install nose и после этого nosetests

что-то там думать, выбирать и сравнивать было не очень охота

Aleksandr
19.07.2017
13:54:36
я использовал nose
и как ощущения?

Artem
19.07.2017
13:56:04
не добрался до чего-то супер специфичного, чтобы мочь сейчас описать ощущения. обычные ощущения)

Google
Artem
19.07.2017
13:56:21
подводных камней не обнаружил

Rail'
19.07.2017
14:28:34
Парни, такая задачка, есть например список из трех чисел(может больше) [93.3486486486486, 6.40810810810811, 0.245945945945946] если их сумма больше или равно 98, то как округлить все числа списка так, чтобы их сумма получилась равной 100, например здесь должно получиться [94, 6, 0]

Ignalion
19.07.2017
14:29:39
иууу

Rail'
19.07.2017
14:30:48
иууу
сложно/просто?))

Ignalion
19.07.2017
14:31:02
сложно/просто?))
Странно, я бы сказал

tonko
19.07.2017
14:31:07
одновременно

Ignalion
19.07.2017
14:31:30
Ну и, мало информации. Чисел может быть больше? А сумма всегда 98?

b0g3r
19.07.2017
14:31:49
а нельзя округлить 93 , 7 , 0?

Artem
19.07.2017
14:31:51
округлить по каким правилам?

Ignalion
19.07.2017
14:31:52
Ну и плюс, округлить 93.3 до 94 - это тоже странно

tonko
19.07.2017
14:31:52
интересно где такое пригодилось

b0g3r
19.07.2017
14:32:10
или вообще какое правило округления? чтоб 100 получилось, остальное неважно?

Roman
19.07.2017
14:32:16
>>> from operator import add >>> reduce(add, [93.3486486486486, 6.40810810810811, 0.245945945945946]) 100.00270270270266

Artem
19.07.2017
14:32:21
так-то просто домножаешь на 100/98, все тримишь и к рандомному элементу добавляешь 1

b0g3r
19.07.2017
14:32:37
Roman
19.07.2017
14:32:46
сорре

Roman
19.07.2017
14:33:42
это к что простое округление и так работает

Google
Ignalion
19.07.2017
14:34:04
А. Я понял

b0g3r
19.07.2017
14:34:20
это к что простое округление и так работает
как? округляет три числа, чтобы в сумме получилось сто?)

Rail'
19.07.2017
14:34:20
Ну и, мало информации. Чисел может быть больше? А сумма всегда 98?
если сумма входит в промежуток, 98>=x<=102, ну пусть кол-во чисел будет три

b0g3r
19.07.2017
14:35:00
а нельзя округлить 93 , 7 , 0?

tonko
19.07.2017
14:35:22
а нельзя округлить 100, 0, 0?

Ignalion
19.07.2017
14:35:22
Просто округление не ассоциативно

То есть, round(a) + round(b) != round(a + b)

Rail'
19.07.2017
14:35:40
а нельзя округлить 93 , 7 , 0?
а как я узнаю что второе число надо округлить вверх

tonko
19.07.2017
14:35:50
раз уж мы так странно округляем

Roman
19.07.2017
14:36:02
как? округляет три числа, чтобы в сумме получилось сто?)
потому что если три числа любый то 100 всегда никак не получится

b0g3r
19.07.2017
14:36:04
это к тебе вопрос - по какому правилу мы решаем, какое число вверх округляем, а какое вниз

b0g3r
19.07.2017
14:38:24
если что - вот решение тут было уже

так-то просто домножаешь на 100/98, все тримишь и к рандомному элементу добавляешь 1

Rail'
19.07.2017
14:40:55
А ты хочешь именно сделать чтобы если round(a+b) было 100, то и round(a) + round(b) было 100?
я хочу чтобы было так func(x1->float, x2->float, x3->float) -> List[y1->int, y2->int, y3->int], где если 98 <= sum(x1, x2, x3) <=102, то sum(y1, y2, y3) = 100

Tigran
19.07.2017
14:46:28
только надо домножить на 100 / (x1 + x2 + x3)

Google
Artem
19.07.2017
14:46:54
только надо домножить на 100 / (x1 + x2 + x3)
а как ты думаешь, откуда я взял 98?)

Tigran
19.07.2017
14:47:01
так там у него необязательно 98

а от 98 до 102

Artem
19.07.2017
14:47:14
на тот момент было 98!

короч ну да, смысл такой

Tigran
19.07.2017
14:47:26
нет, он сразу писал >= 98

Admin
ERROR: S client not available

Tigran
19.07.2017
14:47:44
ещё есть проблема, что в трёх дробных частях суммарно не обязательно 1, может быть ещё 2

Artem
19.07.2017
14:47:44
а, это я в глаза ебусь, сорян

Tigran
19.07.2017
14:48:44
задача и правда требует додумывания в части постановки

Nikolay
19.07.2017
14:49:32
while not sum(a) == 100: a = [i + random.uniform(-1, 1) for i in a]

Ignalion
19.07.2017
14:49:37
Ну в общем

https://stackoverflow.com/questions/792460/how-to-round-floats-to-integers-while-preserving-their-sum

Tigran
19.07.2017
14:55:19
while not sum(a) == 100: a = [i + random.uniform(-1, 1) for i in a]
чот мне подсказывает, что сумма будет стремиться к бесконечности с вероятностью 1

Nikolay
19.07.2017
14:55:36
не, понятно, что код чисто на поржать :)

Tigran
19.07.2017
14:56:05
ну ты просто долго прибавляешь к ней случайную величину, равномерно распределённую на [-1, 1]

Tigran
19.07.2017
14:56:46
есть теорема, что ряд из каких-то там (независимых и что-то ещё) случайных величин сходится либо с вероятностью 0, либо с вероятностью 1

Google
Tigran
19.07.2017
14:57:07
ну как не ряд

ты ж прибавляешь бесконечно)

Nikolay
19.07.2017
14:57:15
три дискретные случайные величины

Tigran
19.07.2017
14:57:23
дискретные?

Denis
19.07.2017
14:57:33
Расходится != сходится к бесконечности

Tigran
19.07.2017
14:57:37
у него float'ы, и random.uniform тоже float'ы

упс

Denis
19.07.2017
14:57:53
Расходится != неограничен даже

Nikolay
19.07.2017
14:57:54
а что, у float'ов бесконечная точность?

Tigran
19.07.2017
14:58:17
Хммм, ну если спуститься на землю к флотам, то фиг знает, конечно

Nikolay
19.07.2017
14:58:25
ну и вот

Tigran
19.07.2017
15:00:07
запустил

:)

числа растут

Nikolay
19.07.2017
15:00:17
и что, отработал?)

ну, генератор случайных чисел не идеален

Страница 3251 из 9768