@python_beginnersЭта группа больше не существует

Страница 485 из 1885
Zart
24.09.2016
21:01:31
тот кто спросил похоже сам не понимает что он делает

и выдаются ближайшие из большого списка
>>> import math >>> distance = lambda p0:lambda p1:math.hypot(p1[0] - p0[0], p1[1] - p0[0]) >>> min([(0, 0), (1, 1), (2, 2)], key=distance((-1, -1))) (0, 0)

Темный
24.09.2016
21:04:37
жоска

Zart
24.09.2016
21:05:13
я объявляю функцию, которая хавает точку и возвращает лямбду которая считает расстояние от неё до переданной и тогда min находит среди списка точек ту, у которой расстояний минимально до указанной

Google
Zart
24.09.2016
21:06:05
если для точек создать класс, который будет считать их разницу покоординантно, то могло бы выглядеть как distance = lambda p0:lambda p1:math.hypot(*(p1 - p0))

Dk
24.09.2016
21:07:31
Ладно. В общении с поддержкой главное не вешать нос. Давай я объясню. Идл(или кликер) - это игра, цель которой - увеличение определённого значения (обычно до бесконечности). Популярнейший пример - Cookie clicker. Сначала увеличение значения идут медленно, но вскоре достигает десятков-сотен тысяч в секунду. Я хочу понять, как реализуется плавное изменение, а не прыжками, при высоких значениях в секунду.

Zart
24.09.2016
21:08:01
теперь я точно нихера не понял

Dk
24.09.2016
21:10:16
Блэ. Открой куки кликер., Если не сложно

Он браузерка

Без регистрации?

Zart
24.09.2016
21:11:00
если ты даже не в состоянии задачу сформулировать, то я хз как ты её решать собрался

Dk
24.09.2016
21:14:14
Вывод 30 кадров в секунду достаточно плавный.

А теперь представь часы, выводятся в 30 кадров в секунду. Вот. Идеальный пример.

Zart
24.09.2016
21:15:38
вы мне объясните, что именно он хочет... свою копию игры создать?

Google
Dk
24.09.2016
21:16:53
Я сформулировал задачу и уже понял как её решать. Спасибо Зарт.

Zart
24.09.2016
21:17:56
и третий раз я нихуя не пони

John
24.09.2016
21:17:59
вопрос был в рассчетах или в отображении?

Zart
24.09.2016
21:18:20
услуги резиновой уточки - пять баксаф

Dk
24.09.2016
21:18:35
чта?)
Есть аналоговые часы, где секундная стрелка прыгает, а есть, где она плавная. Мне хотелось понять, как реализовать программно плавное движение.

Zart
24.09.2016
21:19:12
x // granularity * granularity

Dk
24.09.2016
21:19:31
Изменение значения отдельно. Вывод отдельно. Я так решил.

Zart
24.09.2016
21:20:00
>>> [i // 3 * 3 for i in range(20)] [0, 0, 0, 3, 3, 3, 6, 6, 6, 9, 9, 9, 12, 12, 12, 15, 15, 15, 18, 18] >

т.е. берем исходный таймер, который считает время с достаточной точностью и загрубляем его до нужных пределов в примере выше мы плавное изменение от 0 до 20 превращаем в скачки по 3 секунды

математика простая - делим на шаг, отбрасываем дробную часть - это и огрубляет/округляет умножив обратно возвращаем к прежнему диапазону

а эту задачу решают интерполяцией/экстраполяцией значений

возьми к примеру яндекс.транспорт там автобусы отмечаются на остановках или там по гпс раз в сколько-то минут, но на карте движение точек плавное потому что зная предыдущие положения, можно оценить среднюю скорость, и зная маршрут можно экстраполировать эти данные для предсказания где он примерно сейчас прикольно наблюдать когда эта эвристика не срабатывает

Dk
24.09.2016
21:26:42
Можно разделить значение в секунду на 100 и 100 раз задать код sleep 0.01; <смена значения>. Но как-то костыльно выглядит.

Поэтому и спросил.

Zart
24.09.2016
21:27:14
костыльность этого решения в том, что слип не будет спать строго 0.01 секунды

Dk
24.09.2016
21:27:27
Знаю

Zart
24.09.2016
21:27:29
у него точность плавает при разной нагрузке системы

поэтому будет набегать ошибка

Google
Zart
24.09.2016
21:27:46
эту проблему решают разными способами

спинлоки или по времени

если у тебя есть скажем time.time который может вернуть достаточно точное время, то можно рассчитывать время до следующего интервала и пытаться спать именно столько

в итоге код будет спать не 1 секунду, а скажем сперва 0.999, потом 1.002, потом 0.91, и т.д.

выравнивая перекосы

а спинлоков в питоне не сделать, наверное..

time.sleep(next_tick - time.clock()) # пытаться поспать строго оставшееся до следующего тика время while time.clock() < next_tick: pass # хуярить всеми силами проца расчет времени пока не наступит время Х

второе и зовется спинлоком, потому что процессор крутится как белка в колесе, пока лок не отпустит

b0g3r
24.09.2016
21:33:29
А чё за мода на клепание своих куки-кликеров

Вижу раз в месяц подобные вопросы

Dk
24.09.2016
21:37:48
С этим слипом весь процесс спит. Это не удобно

Zart
24.09.2016
21:38:05
у тебя ж не гуй, разве не похер?

Dk
24.09.2016
21:38:25
Пока не гуй - да

Zart
24.09.2016
21:38:30
...

время охуительных условий

пора съебывать от такого заказчика

Dk
24.09.2016
21:43:52
Мне просто нечего делать. Беззадачный весь такой сижу.

И без интернета

Letalis
25.09.2016
05:47:50
n = int(input('Enter number ')) prematrix = [] prematrix.append([0] * n) matrix = prematrix * n martix[0][0] = 1 print(matrix) здесь число n, которое вводишь вначале регулирует количество нулей в списке, а затем и количество таких списков, то есть если ввести 3, то будет так: [[0, 0, 0], [0, 0, 0], [0, 0, 0]] и мне надо тчоб было так: [[1, 0, 0], [0, 0, 0], [0, 0, 0]] а получается так: [[1, 0, 0], [1, 0, 0], [1, 0, 0]] Что не так?

Older
25.09.2016
07:32:32
martix - коряво написал переменную

Google
Letalis
25.09.2016
07:36:45
А, да точно. Но не в этом дело.

Он в каждую добавляет 1-ку, а надо только в первую.

Amaro
25.09.2016
07:44:22
задачи для продвинутых новичков https://devman.org
Я даже не вполне новичок, но у меня нет фб и вк. И не будет. Что делать, шеф?

Letalis
25.09.2016
08:33:57
http://stackoverflow.com/q/7255383
о, спасибо большое

Темный
25.09.2016
12:24:16
что-то не переводит каретку \n в строке вида '''для выполнения скрипта нужно:\n ...'''

это описание для —help если что

V
25.09.2016
12:34:44
а зачем \n в тройных кавычках? они же и так весь вайтспейс сохраняют

Темный
25.09.2016
12:36:06
пробовал и без, все равно в 1 строку

V
25.09.2016
12:36:51
попробовал у себя - в 2

Vitalii
25.09.2016
12:38:49
в три )

http://imgur.com/f0jDexnl.png

V
25.09.2016
12:39:33
>>> print('''для выполнения скрипта нужно: ... - моск! ... - руки ... - интерпретатор ... - скрипт ... ''' ... ) для выполнения скрипта нужно: - моск! - руки - интерпретатор - скрипт >>>

⬗VLAD⌶K⬖
25.09.2016
12:43:12
зачем моск еси есть руки??

V
25.09.2016
12:43:17
вот кстати по случаю выходных давайте похоливарим по поводу кавычек? пеп8 разрешает любые, но почему-то в примерах всяких и проч чаще всего встречаю двойные, а сам препочитаю одинарные тупо чтоб шифт не дрочить лишний раз. а какие кавычки используете вы и почему?

Stanislav
25.09.2016
12:43:35
за упоминание пеп8 надо бить в лицо

V
25.09.2016
12:43:37
зачем моск еси есть руки??
одно без другого чаще всего бесполезно

John
25.09.2016
12:43:52
Google
Stanislav
25.09.2016
12:44:08
я например позволяю себе ставить пробелы между = в аргументах функции

потому что это тупо уменьшает нагрузку и логично

V
25.09.2016
12:44:24
я смотрю вброс удался

⬗VLAD⌶K⬖
25.09.2016
12:44:28
за упоминание пеп8 надо бить в лицо
в пеп8 про указание бить в литсо нечего не было

Stanislav
25.09.2016
12:44:35
но нет, пепошкольники будут кукарекать до посинения

Темный
25.09.2016
12:44:47
бляд, на линупсе скрин не отпраляется, щас сфоткаю на телефон, лол

Stanislav
25.09.2016
12:46:08
кавычки всёравно совершенно но есть забавная практика когда строки обрамляются двойными а "литералы" одинарными

Темный
25.09.2016
12:46:16
V
25.09.2016
12:46:39
Темный
25.09.2016
12:47:03
зоебали со своими обновлениями телеграмов

⬗VLAD⌶K⬖
25.09.2016
12:47:11
с телефона тоже не отправляется
есть такая приблуда для браузера - lightshot

Темный
25.09.2016
12:47:29
clip2net предпочитаю

John
25.09.2016
12:47:42
роберт, это тупик
Но есть же телеграм в браузере

V
25.09.2016
12:47:58
а еще мнения про кавычки будут?

Темный
25.09.2016
12:48:16
python3 bars.py --help usage: bars.py [-h] Скрипт подлючает файл .json и выводит: 1) Самый большой бар по кол-ву мест 2) Самый маленький бар по кол-ву мест 3) Ближайший к вам бар при условии, что будут введены корректные координаты !!!Для работы скрипта положите файл 'Бары.json' в папку со скриптом или введите путь в диалоговом окне !!!Кординаты должны быть записаны через запятую в формате 37.621587946152012, 55.765366956608361 optional arguments: -h, --help show this help message and exit

description='''Скрипт подлючает файл .json и выводит: 1) Самый большой бар по кол-ву мест 2) Самый маленький бар по кол-ву мест 3) Ближайший к вам бар при условии, что будут введены корректные координаты !!!Для работы скрипта положите файл \'Бары.json\' в папку со скриптом или введите путь в диалоговом окне !!!Кординаты должны быть записаны через запятую в формате 37.621587946152012, 55.765366956608361''' ) args = helper.parse_args()

Страница 485 из 1885

Эта группа больше не существует Эта группа больше не существует