
Denis
17.12.2016
12:26:23
а вам?
или у ботов нет возраста?

Yan?
17.12.2016
12:45:09
Чувствую себя дебилом, пытаюсь напечатать поле для крестиков ноликов и как-то не выходит
class Field:
field = [
[0, 0, 0],
[0, 0, 0],
[0, 0, 0],
]
cell = '|--'
size = 3
def printField(self):
for row in range(self.size):
for val in range(self.size):
if self.field[row][val] == 0:
print(Field.cell)
print()

Google

Yan?
17.12.2016
12:45:22
бля
а нет, все норм
в общем, выводит
|--
|--
|--
|--
|--
|--
|--
|--
|--

Igor
17.12.2016
12:48:38
погодь, а как ты ваще хочешь его отображать?
почему cell - это '|--', а не, скажем, '[ ]'?
а, пофиг в принципе
сорри))
❯ python3 ttt.py
|-- |-- |--
|-- |-- |--
|-- |-- |--
так хочешь ведь?
def printField(self):
for row in range(self.size):
for val in range(self.size):
if self.field[row][val] == 0:
print(Field.cell, end=" ")
print()
обрати внимание на end=" "

Yan?
17.12.2016
12:49:57
я пока тестирую это все дело, чтобы хоть как-то с питоном познакомиться, решил написать крестики-нолики

Igor
17.12.2016
12:50:06
(во втором питоне будет print cell, - с запятой на конце)

Google

Yan?
17.12.2016
12:50:21
под 3-им сижу
Я так и делал

Igor
17.12.2016
12:50:27
да я уж понял

Yan?
17.12.2016
12:50:27
Сейчас проверю
Спасибо, в прошлый раз делал просто end="" без пробела

Igor
17.12.2016
12:50:56
ну либо end="", если не хочешь вообще никакого пробела между ними
:)

Yan?
17.12.2016
12:51:12
Работает
Магия прям
Что-то сложное форматирование прям
Я не ожидал такого

Igor
17.12.2016
12:52:38
да не, смотри.
для каждой строчки у нас есть по три ячейки.
вот эти три ячейки мы и отображаем print'ом с таким параметром end, чтобы print не переносился на новую строку, а оставался на той же

Yan?
17.12.2016
12:53:29
Думал, что без end-а можно было как-то решить, просто после джавы о таком и не думаешь

Igor
17.12.2016
12:54:12
можно и без end'а, как раз щас пишу пример, но не факт, что он тебе понравится :D

Yan?
17.12.2016
12:54:42
Давай гляну

Igor
17.12.2016
12:54:57
def printField(self):
for row in range(self.size):
print(' '.join(Field.cell if self.field[row][val] == 0 else '|??' for val in range(self.size)))

Yan?
17.12.2016
12:56:25
о бля
хотя понятно

Igor
17.12.2016
12:56:49
ну да, если убрать твое условие с == 0 и cell, то все в разы проще
def printField(self):
for row in range(self.size):
print('{} {} {}'.format(*self.field[row]))

Google

Igor
17.12.2016
12:57:05
вот еще как вариант
(но тут совсем тупо, для наглядности. и если хочется учитывать размер, то будет че-то типа
print(self.size * '{} '.format(*self.field[row])))

Yan?
17.12.2016
12:58:13
class Field:
field = [
[2, 0, 0],
[0, 1, 0],
[2, 0, 1],
]
cell = '| '
zero = 'O '
x = 'X '
size = 3
def printField(self):
for row in range(self.size):
for val in range(self.size):
if self.field[row][val] == 0:
print(Field.cell, end="")
if self.field[row][val] == 1:
print(Field.zero, end="")
if self.field[row][val] == 2:
print(Field.x, end="")
print("")

Igor
17.12.2016
12:58:16
тут уже магия, которая заключается в том, что
'a' * 3
это 'aaa'

Yan?
17.12.2016
12:58:31
Чувствую, как пойду на джуна устраиваться, посмотрят на мой код и скажут нет

arisu
17.12.2016
12:58:51
да ето так

Igor
17.12.2016
12:59:01
да не, все не настолько плохо
но визуально выглядит странно!

arisu
17.12.2016
12:59:02
где (object) в определении класса?

Yan?
17.12.2016
12:59:03

arisu
17.12.2016
12:59:08
где конструктор?
почему класс, а не функция?

Yan?
17.12.2016
12:59:19
Ну я пока только с ооп сегодня познакомился

Yan?
17.12.2016
12:59:22
в питоне

Igor
17.12.2016
12:59:32

Yan?
17.12.2016
12:59:36
Почему класс, потому что после джавы
У меня просто ооп головного мозга

arisu
17.12.2016
12:59:48
ясно
почему тогда на яве не пишешь?

Yan?
17.12.2016
13:00:03
Работы в городе нет
А если есть, то на гибкий график не берут

Google

Igor
17.12.2016
13:00:18
явы нет, а питон есть? :О

Yan?
17.12.2016
13:00:33
Можешь на hh зайти и по Челябинску посмотреть
По городу реально 3-4 конторы

Zart
17.12.2016
13:01:09
>>> field = [
... [2, 0, 0],
... [0, 1, 0],
... [2, 0, 1],
... ]
>>> _=[print(*(' OX'[cell] for cell in row)) for row in field]
X
O
X O
>>>

Igor
17.12.2016
13:02:32
>>> field = [
... [2, 0, 0],
... [0, 1, 0],
... [2, 0, 1],
... ]
>>> _=[print(*(' OX'[cell] for cell in row)) for row in field]
X
O
X O
>>>
вот ты щас понятнее вообще не сделал человеку, готов поспорить!

Yan?
17.12.2016
13:02:42
да не понятно

Rita
17.12.2016
13:02:43

Igor
17.12.2016
13:02:48
(( уже и пошутить нельзя

Rita
17.12.2016
13:02:54
кем вы работаете?

Yan?
17.12.2016
13:02:58
После лямбд уже все понятно становится :)

Admin
ERROR: S client not available

Yan?
17.12.2016
13:03:10
Ну и после лиспа

Denis
17.12.2016
13:03:14
студентом
а вы?

Zart
17.12.2016
13:03:21
два цикла не осилит?

Igor
17.12.2016
13:03:22

Zart
17.12.2016
13:03:30
но при этом знает яву? 8)
не верю!

Igor
17.12.2016
13:03:47
ты что, у него экзамен по яве принимал, чтобы говорить, что он ее знает?!11111

Google

Denis
17.12.2016
13:03:57
Го ИИ для крестиков-ноликов

Nazar
17.12.2016
13:06:06

Rita
17.12.2016
13:06:09
а вы?
я учусь в средней школе

Zart
17.12.2016
13:06:21

Rita
17.12.2016
13:06:27
почему ит такое сложное? я ниче не понимаю

Denis
17.12.2016
13:06:43
бывает

Zart
17.12.2016
13:06:44
т?

Nazar
17.12.2016
13:06:47

Denis
17.12.2016
13:07:09
сначала подумал о темплейтах в с++

Zart
17.12.2016
13:07:33
мне 13
нормально. я в твоем возрасте только еще бейсик учил 8)

[Anonymous]
17.12.2016
13:08:26

Yan?
17.12.2016
13:08:35
А почему выражение принта берется в [ ]

Denis
17.12.2016
13:08:38
Я в 13 вроде питон узнал

[Anonymous]
17.12.2016
13:08:59
А, или мне батя делфи показал

Nazar
17.12.2016
13:09:00
Я в 14
Про питон

Rita
17.12.2016
13:09:14

Denis
17.12.2016
13:09:41
Потому что кто-то извращенец, вот почему

Yan?
17.12.2016
13:10:39
мне это решение нравится, но ничего так и не наглулил про сематнику [ ]

WaitForMeee
17.12.2016
13:10:53
кто тут моей аватаркой пользуется

Denis
17.12.2016
13:11:02
Ok google, python list comprehension

WaitForMeee
17.12.2016
13:11:02
"ну что за страна?"
Эта группа больше не существует