πŸš€ Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ морской Π±ΠΎΠΉ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈΠ³Ρ€Ρƒ "ΠœΠΎΡ€ΡΠΊΠΎΠΉ Π±ΠΎΠΉ" Π½Π° Python, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Tkinter для создания графичСского интСрфСйса.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ шагом являСтся созданиС ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ поля, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива ΠΈΠ»ΠΈ списка. Π’ этом массивС Π±ΡƒΠ΄ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ символы, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ состояниС ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ячСйки Π½Π° ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΌ ΠΏΠΎΠ»Π΅.


        ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ΅_ΠΏΠΎΠ»Π΅ = [['-' for _ in range(10)] for _ in range(10)]
    

Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для отобраТСния ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ поля ΠΈ для взаимодСйствия с ΠΈΠ³Ρ€ΠΎΠΊΠΎΠΌ Ρ‡Π΅Ρ€Π΅Π· графичСский интСрфСйс.


        import tkinter as tk
        
        def ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ_ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ΅_ΠΏΠΎΠ»Π΅():
            for i in range(10):
                for j in range(10):
                    ячСйка = ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ΅_ΠΏΠΎΠ»Π΅[i][j]
                    ΠΊΠ½ΠΎΠΏΠΊΠ° = tk.Button(Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ΅_ΠΎΠΊΠ½ΠΎ, text=ячСйка, state=tk.DISABLED)
                    ΠΊΠ½ΠΎΠΏΠΊΠ°.grid(row=i, column=j)
        
        Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ΅_ΠΎΠΊΠ½ΠΎ = tk.Tk()
        ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ_ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ΅_ΠΏΠΎΠ»Π΅()
        Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ΅_ΠΎΠΊΠ½ΠΎ.mainloop()
    

Код Π²Ρ‹ΡˆΠ΅ создаСт графичСскоС ΠΎΠΊΠ½ΠΎ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ отобраТаСтся ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ с ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΌΠΈ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ячСйку Π½Π° ΠΏΠΎΠ»Π΅.

Для добавлСния Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΈΠ³Ρ€Ρ‹, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для размСщСния ΠΊΠΎΡ€Π°Π±Π»Π΅ΠΉ Π½Π° ΠΏΠΎΠ»Π΅, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ…ΠΎΠ΄ΠΎΠ² ΠΈΠ³Ρ€ΠΎΠΊΠΎΠ² ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ условий ΠΏΠΎΠ±Π΅Π΄Ρ‹ ΠΈΠ»ΠΈ пораТСния.

Π’ этом ΠΊΡ€Π°Ρ‚ΠΊΠΎΠΌ ΠΎΡ‚Π²Π΅Ρ‚Π΅ я прСдставил лишь основы создания ΠΈΠ³Ρ€Ρ‹ "ΠœΠΎΡ€ΡΠΊΠΎΠΉ Π±ΠΎΠΉ" Π½Π° Python. Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π΄Π΅Ρ‚Π°Π»ΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΡŒ с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΈΠ³Ρ€Ρ‹, поТалуйста, ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚Π΅.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ морской Π±ΠΎΠΉ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅

ΠœΠΎΡ€ΡΠΊΠΎΠΉ Π±ΠΎΠΉ - это классичСская ΠΈΠ³Ρ€Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΄Π²Π° ΠΈΠ³Ρ€ΠΎΠΊΠ° ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ ΠΏΠΎΡ‚ΠΎΠΏΠΈΡ‚ΡŒ ΠΊΠΎΡ€Π°Π±Π»ΠΈ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π° Π½Π° сСткС. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свою ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ этой ΠΈΠ³Ρ€Ρ‹ Π½Π° Python, Π²Π°ΠΌ потрСбуСтся Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ основ языка ΠΈ использованиС Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… встроСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

Π¨Π°Π³ 1: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сСтки

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ шагом Π² создании морского боя являСтся созданиС ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сСтки, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊΠΎΡ€Π°Π±Π»ΠΈ ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Ρ…ΠΎΠ΄Ρ‹ ΠΈΠ³Ρ€ΠΎΠΊΠΎΠ². Для этого ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ список Π² Python.


# Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ пустой ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сСтки Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 10x10
grid = [[' - ']*10 for _ in range(10)]

Π­Ρ‚ΠΎ создаст Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ список с 10 строками ΠΈ 10 столбцами, Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹ΠΉ символом '-'. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт списка прСдставляСт ΠΎΠ΄Π½Ρƒ ячСйку Π½Π° ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сСткС.

Π¨Π°Π³ 2: Π Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ€Π°Π±Π»Π΅ΠΉ

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом являСтся Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ€Π°Π±Π»Π΅ΠΉ Π½Π° ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сСткС. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΡ€Π°Π±Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ нСсколько сосСдних ячССк ΠΈ Π±Ρ‹Ρ‚ΡŒ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈΠ»ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Π°Π±Π»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ чисСл ΠΈΠ»ΠΈ символов Π½Π° ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сСткС.


# Π Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΏΠ°Π»ΡƒΠ±Π½ΠΎΠ³ΠΎ корабля
grid[2][3] = ' X '

# Π Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ Π΄Π²ΡƒΡ…ΠΏΠ°Π»ΡƒΠ±Π½ΠΎΠ³ΠΎ корабля
grid[5][6] = grid[5][7] = ' X '

# Π Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ Ρ‚Ρ€Π΅Ρ…ΠΏΠ°Π»ΡƒΠ±Π½ΠΎΠ³ΠΎ корабля
grid[8][1] = grid[8][2] = grid[8][3] = ' X '

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΡ‹ размСстили Π½Π° ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сСткС ΠΎΠ΄Π½ΠΎΠΏΠ°Π»ΡƒΠ±Π½Ρ‹ΠΉ, Π΄Π²ΡƒΡ…ΠΏΠ°Π»ΡƒΠ±Π½Ρ‹ΠΉ ΠΈ Ρ‚Ρ€Π΅Ρ…ΠΏΠ°Π»ΡƒΠ±Π½Ρ‹ΠΉ ΠΊΠΎΡ€Π°Π±Π»ΠΈ.

Π¨Π°Π³ 3: Π₯ΠΎΠ΄ ΠΈΠ³Ρ€ΠΎΠΊΠΎΠ²

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° игровая сСтка ΠΈ ΠΊΠΎΡ€Π°Π±Π»ΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ Ρ…ΠΎΠ΄Π°ΠΌ ΠΈΠ³Ρ€ΠΎΠΊΠΎΠ². Π₯ΠΎΠ΄ ΠΈΠ³Ρ€ΠΎΠΊΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ Π² Π²Ρ‹Π±ΠΎΡ€Π΅ ячСйки Π½Π° ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сСткС ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅, Π΅ΡΡ‚ΡŒ Π»ΠΈ Π² этой ячСйкС ΠΊΠΎΡ€Π°Π±Π»ΡŒ ΠΈΠ»ΠΈ пустоС мСсто.


# Π₯ΠΎΠ΄ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈΠ³Ρ€ΠΎΠΊΠ°
row = int(input("Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Π½ΠΎΠΌΠ΅Ρ€ строки: "))
col = int(input("Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Π½ΠΎΠΌΠ΅Ρ€ столбца: "))

if grid[row][col] == ' - ':
    print("Мимо!")
    grid[row][col] = ' O '
else:
    print("Попал!")
    grid[row][col] = ' X '

# Π₯ΠΎΠ΄ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈΠ³Ρ€ΠΎΠΊΠ° (Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄)

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ просто считываСм строку ΠΈ столбСц ΠΎΡ‚ ΠΈΠ³Ρ€ΠΎΠΊΠ° ΠΈ провСряСм содСрТимоС Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ ячСйки. Если ячСйка содСрТит пустоС мСсто (' - '), ΠΌΡ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ "Мимо!" ΠΈ ΠΏΠΎΠΌΠ΅Ρ‡Π°Π΅ΠΌ эту ячСйку символом ' O '. Если ячСйка содСрТит ΠΊΠΎΡ€Π°Π±Π»ΡŒ (' X '), ΠΌΡ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ "Попал!" ΠΈ ΠΏΠΎΠΌΠ΅Ρ‡Π°Π΅ΠΌ эту ячСйку символом ' X '.

Π¨Π°Π³ 4: ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠΎΠ±Π΅Π΄Ρ‹

Π˜Π³Ρ€Π° заканчиваСтся, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΈΠ³Ρ€ΠΎΠΊΠΎΠ² ΠΏΠΎΡ‚ΠΎΠΏΠΈΡ‚ всС ΠΊΠΎΡ€Π°Π±Π»ΠΈ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠ°. Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠΎΠ±Π΅Π΄Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ провСряСт, ΠΎΡΡ‚Π°Π»ΠΈΡΡŒ Π»ΠΈ Π½Π° ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сСткС Π΅Ρ‰Π΅ ΠΊΠΎΡ€Π°Π±Π»ΠΈ.


def check_winner(grid):
    for row in grid:
        if ' X ' in row:
            return False
    return True

# ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠΎΠ±Π΅Π΄Ρ‹ послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ…ΠΎΠ΄Π°
if check_winner(grid):
    print("Π˜Π³Ρ€ΠΎΠΊ 1 ΠΏΠΎΠ±Π΅Π΄ΠΈΠ»!")
else:
    print("Π˜Π³Ρ€ΠΎΠΊ 2 ΠΏΠΎΠ±Π΅Π΄ΠΈΠ»!")

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ провСряСм ΠΊΠ°ΠΆΠ΄ΡƒΡŽ строку Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ символа ' X '. Если Π² ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сСткС Π½Π΅ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ символов ' X ', Ρ‚ΠΎ ΠΌΡ‹ считаСм, Ρ‡Ρ‚ΠΎ ΠΊΠΎΡ€Π°Π±Π»ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΠΈΠ³Ρ€ΠΎΠΊΠΎΠ² Π±Ρ‹Π»ΠΈ ΠΏΠΎΡ‚ΠΎΠΏΠ»Π΅Π½Ρ‹, ΠΈ этот ΠΈΠ³Ρ€ΠΎΠΊ ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ΡΡ ΠΏΠΎΠ±Π΅Π΄ΠΈΡ‚Π΅Π»Π΅ΠΌ.

Π¨Π°Π³ 5: Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ возмоТности

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ свою ΠΈΠ³Ρ€Ρƒ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ возмоТности, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ:

  • Π’Ρ‹Π²ΠΎΠ΄ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сСтки Π½Π° экран послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ…ΠΎΠ΄Π°
  • Π Π°Π½Π΄ΠΎΠΌΠ½ΠΎΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ€Π°Π±Π»Π΅ΠΉ Π½Π° ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сСткС
  • ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ количСства Ρ…ΠΎΠ΄ΠΎΠ²
  • Π’Π΅Π΄Π΅Π½ΠΈΠ΅ статистики Ρ…ΠΎΠ΄ΠΎΠ² ΠΈΠ³Ρ€ΠΎΠΊΠΎΠ²

Π­Ρ‚ΠΈ ΠΎΠΏΡ†ΠΈΠΈ позволят ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Π°ΡˆΡƒ ΠΈΠ³Ρ€Ρƒ Π΅Ρ‰Π΅ интСрСснСС ΠΈ слоТнСС.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ морской Π±ΠΎΠΉ Π½Π° Python. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ список, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈΠ³Ρ€ΠΎΠ²ΡƒΡŽ сСтку, Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΡ€Π°Π±Π»ΠΈ Π½Π° Π½Π΅ΠΉ, ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ Ρ…ΠΎΠ΄Ρ‹ ΠΈΠ³Ρ€ΠΎΠΊΠΎΠ² ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ΠΏΠΎΠ±Π΅Π΄Ρƒ. НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ возмоТности, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Π°ΡˆΡƒ ΠΈΠ³Ρ€Ρƒ Π±ΠΎΠ»Π΅Π΅ Π·Π°Ρ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ. Π£Π΄Π°Ρ‡ΠΈ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅!

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Π”Π΅Π»Π°Π΅ΠΌ ΠΈΠ³Ρ€Ρƒ ΠœΠΎΡ€ΡΠΊΠΎΠΉ Π±ΠΎΠΉ Π½Π° Python / Π£Ρ€ΠΎΠΊ #1

Π”Π΅Π»Π°Π΅ΠΌ ΠΈΠ³Ρ€Ρƒ ΠœΠΎΡ€ΡΠΊΠΎΠΉ Π±ΠΎΠΉ Π½Π° Python / Π£Ρ€ΠΎΠΊ #3

ΠœΠΎΡ€ΡΠΊΠΎΠΉ Π±ΠΎΠΉ Π½Π° Python ΠΈ Pygame (Ρ‡Π°ΡΡ‚ΡŒ 1: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ сСток для ΠΈΠ³Ρ€Ρ‹)

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅: совСты ΠΈ Ρ‚Ρ€ΡŽΠΊΠΈ для создания качСствСнного ΠΊΠΎΠ΄Π°

πŸ” Как ΡƒΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅ ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ строки? 🐍✨

Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π±ΠΎΡ‚Π½Π΅Ρ‚ Π½Π° Python: пошаговоС руководство с использованиСм emoji πŸ˜ˆπŸ’»

πŸš€ Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ морской Π±ΠΎΠΉ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

πŸ”‘ Как пСрСвСсти ΠΊΠΎΠ΄ ΠΏΠΈΡ‚ΠΎΠ½Π° Π² C: пошаговоС руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

😎 Как ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅ Π±Π΅Π· стадии исполнСния ΠΊΠΎΠ΄Π° 😎

πŸ€– Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π’Π°ΠΉΠ±Π΅Ρ€ Π±ΠΎΡ‚Π° Π½Π° Python: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ