• В чём ошибка определения переменной экземпляра?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Рекомендую напечатать id объектов, сразу станет видно проблему:

    for i in range(11):
      print (f"`{i} {id(g[i])}")
      for j in range(7):
        print (f"  `{j} {id(g[i][j])}")
        #deb.write(str(i)+"-"+str(j)+" "+str(g[i][j].x)+" "+str(g[i][j].y)+"\r\n")


    кусочек вывода
    `0 140084785493632
      `0 140084785519824
      `1 140084785520544
      `2 140084785519872
      `3 140084785520016
      `4 140084785520448
      `5 140084785520592
      `6 140084785520112
    `1 140084785493632
      `0 140084785519824
      `1 140084785520544
      `2 140084785519872
      `3 140084785520016
      `4 140084785520448
      `5 140084785520592
      `6 140084785520112


    Все элементы списка длины 11 по первому индексу ссылаются на один и тот же массив длины 7

    Ошибка тут в том, что выражение

    some_list * 11

    конструирует список из 11 ссылок на один и тот же массив. Который на последней итерации цикла получает x=10 во всех элементах.

    Решить можно, например, так:

    g = []
    
    for i in range(11):
      g.append([])
      for j in range(7):
        g[i].append(Point(i, j))


    В python все объекты передаются по ссылке, и это надо учитывать, а при необходимости копировать их явно.
    Ответ написан
    Комментировать
  • Как правильно подать на вход нейросети IP-адрес?

    расстояние между IP-адресами в сетях ничего не значит.

    Вообще-то очень даже значит, но расстояние надо считать не как модуль разницы, а как количество нулей в минимальной общей маске (т.е. если адреса попадают в сеть /28 то расстояние между ними 4).

    Иногда нормируют сеть до адреса сети по информации из BGP или whois или добавляют ASN, но такие сети не всегда точны. Иногда используют подход, что вначале берутся мелкие подсети, например /24, если смежные подсети имеют одинаковые признаки, то их объединяют в более крупную подсеть и так далее итеративно.
    Ответ написан
    4 комментария
  • Как правильно подать на вход нейросети IP-адрес?

    dyuriev
    @dyuriev
    A posteriori
    используйте базу maxmiddb, и подавайте в нейросеть не сам айпишник а информацию об географических координатах (не забывайте, что они сферические, к слову, и их стоит преобразовать в декартову систему, приняв центр земли за начало координат), стране, регионе, городе, ASN (организации/провайдере) и что-то там еще можно выудить

    сам по себе айпишник нейросети вряд ли о чем то скажет

    PS: учтите, что в базе есть пробелы, например не будет инфы о регионе или городе
    Ответ написан
    6 комментариев
  • Как реализовать подзапрос в коррелированном запросе?

    rozhnev
    @rozhnev Куратор тега MySQL
    Fullstack programmer, DBA, медленно, дорого
    Ниже решение для MySQL 8 используюшее window functions:
    select 
    	id, title, avg_value
    from params
    join (
    select 
    	p_id, 
    	`value`, 
    	avg(`value`) over (partition by p_id order by value desc) avg_value,
    	row_number() over (partition by p_id order by value desc) rn
    from data
    ) avg_data on avg_data.p_id = params.id
    where rn = 50
    ;


    MySQL fiddle

    или так:

    select 
    	id, title, avg(value) avg_value
    from params
    join (
    select 
    	p_id, 
    	`value`, 
    	row_number() over (partition by p_id order by value desc) rn
    from data
    ) avg_data on avg_data.p_id = params.id
    where rn <= 50
    group by id, title
    ;
    Ответ написан
    1 комментарий
  • Как скрыть от провайдера факт того что я пользуюсь интернетом?

    Никак ты не сможешь обойти систему.
    Ответ написан
    Комментировать
  • Чем можно эмулировать коммутатор?

    Mystray
    @Mystray
    NOC
    В том же eve-ng/gns3 можно запустить виртуалки с Juniper vQFX, ExtremeXOS или HPE Comware, правда с количеством портов не очень хорошо, но для поиграться хватит.
    Естественно, не весь функционал обязан работать, но, все же, лучше чем ничего
    Ответ написан
    Комментировать
  • Чем можно эмулировать коммутатор?

    @dpsz
    Как выше сказали, есть такой зверь, как IOU (образы можно найти на одном навечно забаненом торенттрекере; есть образы L2 и L3). Замечательно работают в GNS3, но, что касается полновесного функционала той же 2960, то все очень далеко от идеала. Так что если хочется поиграться с нормальным боевым иосом как, например, в том же GNS3 с иосами от маршрутизаторов, то, скорее всего, не получится.
    Ответ написан
    Комментировать
  • Какие корневые сервера содержались в башнях WTC до 9/11?

    Moskus
    @Moskus
    Конечно, не можете найти, потому что корневые серверы там не располагались.
    Вот весьма обширная статья (точнее, это кусок книги), которая описывает, что действительно происходило.
    https://www.nap.edu/read/10569/chapter/4
    Ответ написан
    3 комментария