Learn AlphaGo & Python (01)

Source: Deep Learning on Medium

Learn AlphaGo & Python (01)

Printing out an empty game board

code tested on this mac
code learned from this book
🐍 python3 --version
Python 3.7.4
🐍 vim hello_world.py
🐍 python3 hello_world.py
Hello, World!

hello_world.py:

print("Hello, World!")

Play with function join in python3 repl:

🐍 python3
Python 3.7.4 (default, Oct 24 2019, 10:36:19)
[Clang 11.0.0 (clang-1100.0.33.8)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 'abcd'.join(['12', '345'])
'12abcd345'
>>>
🐍

Print 19 dots:

🐍 vim print_board.py
🐍 python3 print_board.py
. . . . . . . . . . . . . . . . . . .

print_board.py:

line = []
for col in range(1, 19 + 1):
line.append(" .")
print(''.join(line))

Print 19×19 dots:

🐍 vim print_board.py 
🐍 python3 print_board.py
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .

print_board.py:

for row in range(1, 19 + 1):
line = []
for col in range(1, 19 + 1):
line.append(" .")
print(''.join(line))

Add row labels:

🐍 vim print_board.py 
🐍 python3 print_board.py
19 . . . . . . . . . . . . . . . . . . .
18 . . . . . . . . . . . . . . . . . . .
17 . . . . . . . . . . . . . . . . . . .
16 . . . . . . . . . . . . . . . . . . .
15 . . . . . . . . . . . . . . . . . . .
14 . . . . . . . . . . . . . . . . . . .
13 . . . . . . . . . . . . . . . . . . .
12 . . . . . . . . . . . . . . . . . . .
11 . . . . . . . . . . . . . . . . . . .
10 . . . . . . . . . . . . . . . . . . .
9 . . . . . . . . . . . . . . . . . . .
8 . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . .

print_board.py:

for row in range(19, 0, -1):
bump = " " if row <= 9 else ""
line = []
for col in range(1, 19 + 1):
line.append(". ")
print('%s%d %s' % (bump, row, ''.join(line)))

Add column labels:

🐍 vim print_board.py 
🐍 python3 print_board.py
19 . . . . . . . . . . . . . . . . . . .
18 . . . . . . . . . . . . . . . . . . .
17 . . . . . . . . . . . . . . . . . . .
16 . . . . . . . . . . . . . . . . . . .
15 . . . . . . . . . . . . . . . . . . .
14 . . . . . . . . . . . . . . . . . . .
13 . . . . . . . . . . . . . . . . . . .
12 . . . . . . . . . . . . . . . . . . .
11 . . . . . . . . . . . . . . . . . . .
10 . . . . . . . . . . . . . . . . . . .
9 . . . . . . . . . . . . . . . . . . .
8 . . . . . . . . . . . . . . . . . . .
7 . . . . . . . . . . . . . . . . . . .
6 . . . . . . . . . . . . . . . . . . .
5 . . . . . . . . . . . . . . . . . . .
4 . . . . . . . . . . . . . . . . . . .
3 . . . . . . . . . . . . . . . . . . .
2 . . . . . . . . . . . . . . . . . . .
1 . . . . . . . . . . . . . . . . . . .
A B C D E F G H J K L M N O P Q R S T

print_board.py:

COLS = 'ABCDEFGHJKLMNOPQRST'for row in range(19, 0, -1):
bump = " " if row <= 9 else ""
line = []
for col in range(1, 19 + 1):
line.append(". ")
print('%s%d %s' % (bump, row, ''.join(line)))
print(' ' + ' '.join(COLS[:19]))