Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 7, 2020 00:47:23

Nik2
Зарегистрирован: 2020-08-07
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Прошу помощь в решении задачи.

Задачка по нампи

Выведите все 8 соседних элементов в любом формате.
X X X
X 0 X
X X X
для элемента “о” элементы “х” являются соседними

Прикреплённый файлы:
attachment задача.jpg (83,9 KБ)

Офлайн

#2 Авг. 7, 2020 00:53:11

VadimK
Зарегистрирован: 2013-07-03
Сообщения: 199
Репутация: +  16  -
Профиль   Отправить e-mail  

Прошу помощь в решении задачи.

 print ("8 элементов")

Офлайн

#3 Авг. 12, 2020 00:52:28

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2584
Репутация: +  60  -
Профиль   Отправить e-mail  

Прошу помощь в решении задачи.

решил. что дальше?



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#4 Авг. 12, 2020 00:55:58

Nik2
Зарегистрирован: 2020-08-07
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Прошу помощь в решении задачи.

ZerG
решил. что дальше?
Ну так выложите..

Офлайн

#5 Авг. 19, 2020 18:48:24

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2584
Репутация: +  60  -
Профиль   Отправить e-mail  

Прошу помощь в решении задачи.

Nik2
положил.
Все ще не понимаю что дальше.



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#6 Авг. 22, 2020 00:54:27

Nik2
Зарегистрирован: 2020-08-07
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Прошу помощь в решении задачи.

На хуй пошел, уебок умничающий!

Офлайн

#7 Авг. 22, 2020 01:41:33

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9726
Репутация: +  843  -
Профиль   Отправить e-mail  

Прошу помощь в решении задачи.

Nik2
Задачка по нампи
Понятно.

Nik2
Выведите все 8 соседних элементов в любом формате.
X X X
X 0 X
X X X
для элемента “о” элементы “х” являются соседними
Непонятно.

В общем смысле вывод подмножества массива:

Тут можно почитать туториал по операциям с массивами
https://numpy.org/doc/stable/user/quickstart.html

  
>>> import numpy as np
>>> 
>>> arr = np.array(['x'] * 100).reshape(10, 10)
>>> print(arr)
[['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']]
>>> 
>>> arr[4][4] = 'o'
>>> print(arr)
[['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'o' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']]
>>> 
>>> out = arr[3:6,3:6]
>>> print(out)
[['x' 'x' 'x']
 ['x' 'o' 'x']
 ['x' 'x' 'x']]
>>>

Через запятую указываются оси X и Y, а срезы указывают с какого по какой элемент в данной оси, внутри которой срез находится, брать.

Параметризованный код:
  
>>> import numpy as np
>>> 
>>> def create_array(rows, cols, point_i, point_j, spacechar, pointchar):
...     out = np.array([spacechar] * rows * cols).reshape(rows, cols)
...     out[point_i][point_j] = pointchar
...     return out
... 
>>> def get_block(arr, point_i, point_j, radius):
...     out = arr[point_i - radius:point_i + radius + 1,
...               point_j - radius:point_j + radius + 1]
...     return out
... 
>>> arr = create_array(10, 10, 4, 4, 'x', 'o')
>>> block = get_block(arr, 4, 4, 1)
>>> 
>>> print(arr)
[['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'o' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']
 ['x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x' 'x']]
>>> print(block)
[['x' 'x' 'x']
 ['x' 'o' 'x']
 ['x' 'x' 'x']]
>>>


tags: numpy array slice



Отредактировано py.user.next (Авг. 22, 2020 02:02:51)

Офлайн

#8 Авг. 23, 2020 22:10:23

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2584
Репутация: +  60  -
Профиль   Отправить e-mail  

Прошу помощь в решении задачи.

То есть ТС пишет

py.user.next
На хуй пошел, уебок умничающий!

А ты ему решение?
Перевожу нахуй с себя на тебя py.user.next.



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#9 Авг. 24, 2020 00:01:05

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9726
Репутация: +  843  -
Профиль   Отправить e-mail  

Прошу помощь в решении задачи.

ZerG
То есть ТС пишет
Он не пишет, он тебе отвечает. То есть ты решил над ним поиздеваться, а он тебя послал на хуй. То есть ты сам в этом виноват. В реале он бы тебе ебучку разбил, а ты бы говорил “я его полчаса доставал, а он мне по ебалу дал, это он виноват, что дерётся”.

ZerG
А ты ему решение?
А я ему решение. Потому что это форум по программированию, а не по какой-то хуйне.

Ну, и мне самому интересно разобраться в numpy, потому что я её не изучал, так как её не портировали поначалу под третий питон, а сейчас портировали и поэтому можно уже изучать её, но времени у меня на это нет, поэтому могу только по чуть-чуть залазить и иногда что-то делать. Пока ему делал решение, разобрался, как эти оси там устроены.

Так что я пользу получил от этого. Ты ничего не получил, тебя только на хуй послали.



Офлайн

#10 Авг. 24, 2020 00:18:17

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Прошу помощь в решении задачи.

py.user.next

py.user.next
То есть ты сам в этом виноват. В реале он бы тебе ебучку разбил
В реале ебучку бьют как раз за посылание взрослых людей нахуй.
py.user.next
А я ему решение.
В следующий раз еще за щеку возьми, раз такой толерантный.
py.user.next
Потому что это форум по программированию
Именно. В данном посте нет ни слова о программировании. Есть малолетний идиот и есть кармадрочер. Давай я тебе плюсов отсыплю, подрочи на ночь.



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version