네 가지 간단한 게임 버전 연결하기 (Python)

2285 단어 codecademy
이것은 나의 첫 번째 댓글이자 파이톤에 관한 나의 첫 번째 개인 프로젝트이다.Connect Four game의 간단한 버전을 만들어 최근 몇 주 동안 Codecademy에서 배운 몇 가지 개념을 연습했습니다.
import numpy as np
import sys

class player:
    def __init__(self, name, symbol):
        self.name = name
        self.symbol = symbol

def droppiece(playeer):
    err = True
    while err == True:
        position = int(input("{}: Drop your piece in the desired position: 1 2 3 4 5 6 7".format(playeer.name))) - 1
        try:
            row_position = np.where(table[:, position] == "-")[0][-1]
            err = False
        except: #Computer throws an exception if the position is not valid:
            print("Column full or invalid position! Program will end because of the error. Please choose another position.")
            err = True

    table[row_position, position] = "{}".format(playeer.symbol)

def showtable():
    for x in range(rows_table):
        print(" ".join(table[x]))

#Set up the table and players for the game:
table = np.array([["-", "-", "-", "-", "-", "-", "-"]] * 6)
rows_table = np.size(table, axis = 0)
columns_table = np.size(table, axis = 1)
player1 = player("Player 1", "x")
player2 = player("Player 2", "o")

while True:
    #Loops game until someone wins:
    continue_or_not = input("Did someone win?: Answer with \"Yes\" or \"No\": ")
    if continue_or_not.lower() == "yes":
        break
    if continue_or_not.lower() == "no":
        pass
    else:
        print("Answer not valid. Please answer with \"Yes\" or \"No\"")
        continue

    #First player drops their piece:
    droppiece(player1)
    showtable()

    #Second player drops their piece:
    droppiece(player2)
    showtable()

print("Game ended!")
GitHub 링크: https://github.com/amavicpos/Codecademyprojects/blob/667c43d50c37fd14eb1b0b1739fabcac7df3e9da/ConnectFour.py
이 프로그램을 개선하는 방법의 하나는 누군가가 언제 승리할지 자동으로 측정하는 것이다.나는 장래에 이 기능을 추가할 것이다.

좋은 웹페이지 즐겨찾기