Python: CARD GAME BOT - Remastering (How do you make a line continue regardless of where it is?)
Question: I'm remastering the bot by my self and I'm stuck! This is a code which prompts
the user to select how many cards they get from the options of

> `7, 9, 11, and 15`
    
    
    def Cards():
        print("Card Amounts")
        print("\nChoices")
        print(7)
        print(9)
        print(11)
        print(15)
        PlayerInput3()
    def PlayerInput3():
        global PlayersCards
        PlayerInput = int(raw_input())
        if(PlayerInput == 7):
            PlayersCards == range(1,7)
            print("Lets get started")
            Game()
    

But when they choose how many cards they want it does stay into affect after
the definition is over. I want the Players card range to continue in a
different defined area. Here:

    
    
    def Game():
        global roundNumber, MyDeck, PlayersCards
        import random
        Select = PlayersCards
        roundNumber = roundNumber + 1
        print("Round %d!") % (roundNumber)
        if(roundNumber == 1) or (roundNumber < 15):
            PlayersCards = random.randint(1, 50)
            MyDeck.append(PlayersCards)
            print("Here are your cards")
            print(MyDeck)
            print("Select a card")
    

But It wont continue on past the

> `def Cards():`

How Can I make it so that the PlayersCard == range(1,7) Continues on
regardless of what definition it is in?


Answer: I think this code works as you require:

    
    
    def instructions():
        print("You will be playing with an ai and whoever lays down the highest number wins that round.")
        print("The points you get are determined by how much higher your card was from your opponents card.")
        print("The person with the most points wins!")
    
    def getUserInput():
        global roundNumber, My_Deck, PlayerPoints, AIPoints
        My_Deck = []
        roundNumber = 0
        AIPoints = 0
        PlayerPoints = 0
        print ("\nDo you want to play?: ")
        print("\nChoices")
        print("1. Yes")
        print("2. No\n")
    
        Choice = input()
    
        if(Choice == 'Yes') or (Choice == 'yes'):
            print("\nOkay, lets get started!")
            startGame()
        elif(Choice in ['No', 'no']):
            print("Okay, bye!")
            quit()
        else:
            print("That is not a Choice!")
            print("Choose 'Yes' or 'No'")
            getUserInput()
    
    def startGame():
        global roundNumber, My_Deck, PlayerPoints, AIPoints
        print("\nAIPoints = %d PlayerPoints = %d" % (AIPoints, PlayerPoints))
        roundNumber = roundNumber + 1
        print("\nRound %d!" % (roundNumber))
        cardChoosen = None
        import random 
    
        if(roundNumber == 1): 
            print("\nHere are your 9 cards.\n")
    
            for Cards in range(9):
                Cards = random.randint(1, 100)
                My_Deck.append(Cards)
    
            while True:
                print("Select one of your cards: "),
                print(My_Deck)
                Select = int(input())
                try:
                    if (Select in My_Deck):
                        My_Deck.remove(Select)
                        print("You choose", Select)
                        print("Your deck now is:")
                        print(My_Deck)
                        cardChoosen = Select
                        break
                    else:
                        print("You don't have that card in your deck!")
                except ValueError as e:
                    print(e)
        elif(roundNumber == 10):
            if(PlayerPoints > AIPoints):
                print("\nCongratulations you won with a score of %d compared to the AI's %d" % (PlayerPoints, AIPoints))
                getUserInput()
            elif(PlayerPoints < AIPoints):
                print("\nUnfortunately you lost with a score of %d compared to the AI's %d" % (PlayerPoints, AIPoints))
                getUserInput()
            else:
                print("\nWow this is basicaly impossible you tied with the AI with you both ahving a score of %d and %d... " % (PlayerPoints, AIPoints))
                getUserInput()
        else:
            print("\nHere are your %d cards.\n" % (9 - roundNumber + 1))
    
            while True:
                print("Select one of your cards: "),
                print(My_Deck)
                Select = int(input())
                try:
                    if (Select in My_Deck):
                        My_Deck.remove(Select)
                        print("You choose", Select)
                        print("Your deck now is:")
                        print(My_Deck)
                        cardChoosen = Select
                        break
                    else:
                        print("You don't have that card in your deck!")
                except ValueError as e:
                    print(e)    
    
        AINumber = random.randint(1, 100)
    
        if(cardChoosen > AINumber):
            print("\nYou won! Your number %d was higher than the AI's number %d" % (cardChoosen, AINumber))
            print("\nYou scored %d points" % (cardChoosen - AINumber))
            PlayerPoints = PlayerPoints + (cardChoosen - AINumber)
            startGame()
        elif(cardChoosen < AINumber):
            print("\nYou Lost! Your number %d was lower than the AI's number %d" % (cardChoosen, AINumber))
            print("\nAI scored %d points" % (AINumber - cardChoosen))
            AIPoints = AIPoints + (AINumber - cardChoosen)
            startGame()
        else:
            print("\nYou tied with the AI! Your number %d was the same as the AI's number %d" % (cardChoosen, AINumber))
            print("\nNobody scored points!")
            startGame()
    
    My_Deck = []
    roundNumber = 0
    AIPoints = 0
    PlayerPoints = 0
    instructions()
    getUserInput()
    

