可以继续添加带有增加的类变量的调用函数吗?

问题描述 投票:0回答:1

我对Python3中的以下程序有一个问题,该程序接受一个字符串,该字符串中的值的数量决定了该函数在调用时是否再次继续。有人通知我,如果在初始化程序中使用诸如self.turn = 0之类的可递增变量,则可以在move()中使用它,而不必在move()中将其定义为没有无限循环。我遇到的问题是,当我运行程序并多次输入“良好输入”(> = 3)时,可递增变量self.turn保持为1,而不是我想要的增加。每次调用该函数后,是否可以继续递增?谢谢,尤里

class Player:
    def __init__(self):
        self.display = 'A'
        self.turn = 0 

    def move(self, move):
        self.move = move
        if self.turn == 0 and len(move) <3:
            self.turn+=1
            print('Your current total of turns: ',self.turn)
            print()
            exit()
        
        if len(move) >= 3 :
            print('good input')
            self.turn +=1
            print('Your current total of turns: ',self.turn)
            print()
        
        else:
            print('bad input')
            self.turn +=1
            print('Your current total of turns: ',self.turn)
            print()
            exit()

        move = input('Input a move: ')
        Player().move(move)



move = input('Input a move: ')
Player().move(move)
python function class increment
1个回答
0
投票

进入代码的这一部分并退出,因为默认情况下,turn = 0

if self.turn == 0 and len(move) <3:
   self.turn+=1
   print('Your current total of turns: ',self.turn)
   print()
   exit()
© www.soinside.com 2019 - 2024. All rights reserved.