У меня есть огромная проблема, прямо сейчас, я не могу сослаться на мои играющих атрибуты, мой код выглядит как это в настоящее время:Yatzy, как я могу ссылаться на мои атрибуты Player?
from terminaltables import AsciiTable
class Player:
def __init__(self,name):
self.name=name
self.ones=0
self.twos=0
self.threes=0
self.fours=0
self.fives=0
self.sixs=0
self.abovesum=0
self.bonus=0
self.onepair=0
self.twopair=0
self.threepair=0
self.fourpair=0
self.smalladder=0
self.bigladder=0
self.house=0
self.chance=0
self.yatzy=0
self.totalsum=0
#self.lista={"ones":0,"twos":0,"threes":0, "fours":0,"fives":0,"sixs":0,"abovesum":0,"bonus":0,"onepair":0,"twopair":0,"threepair":0,"fourpair":0,"smalladder":0,"bigladder":0,"house":0,"chance":0,"yatzy":0,"totalsum":0}
def __repr__(self):
return self.name
def __str__(self):
return self.name
def countbonus(self):
self.abovesum=self.ones+self.twos+self.threes+self.fours+self.fives+self.sixs
if self.abovesum>=63:
self.bonus+=50
return self.abovesum, self.bonus
else:
return self.abovesum, self.bonus
def counttotalsum(self):
self.totalsum=self.abovesum+self.bonus+self.onepair+self.twopair+self.threepair+self.fourpair+self.smalladder+self.bigladder+self.house+self.chance+self.yatzy
def add(self):
moment=input("Where do you want to put your points?: ") #ej klar
points=input("How many points did you get?: ")
self.lista
def visa(self):
for i in self.name:
print(i)
def welcome():
print("Welcome to the yahtzee game!")
players = int(input("How many players: "))
rounds=0
spelarlista=[]
spelarlista.append("name")
while not players==rounds:
player=input("What is your name?: ")
rounds=rounds+1
spelarlista.append(Player(player))
table_data = [spelarlista,
['Ettor',spelarlista[0].ones],
['Tvåor'],
['Treor'],
['Fyror'],
['femmor'],
['sexor']]
table = AsciiTable(table_data)
table.inner_row_border = True
table.table_data[0][0] += '\n'
print(table.table)
welcome()
В настоящее время я получаю ErrorMessage «Str» -объект не имеет атрибута " из них». Я понимаю, что строка spelarlista [0] .ones не работает, но скажем, что я управляю программой с игроками «Джеймс» и «Андерс», и я хочу, чтобы мой yatzy распечатывал таблицу с текущим счетом игроков, как я имею в виду, что, скажем, я сначала напечатал «Джеймс», что я пишу, чтобы получить его очки?
Заранее благодарен!
Tjena Joakim! Svenska är najs men när det kommer до программирования, чтобы следить за ходом до тех пор, пока он не появится. Även om du bara programmerar för dig själv för närvarande kan det vara en bra rutin att försöka träna in då det underlättar för andra programmerare att läsa din kod och att hjälpa dig. Om du är intresserad av jobb inom программирование måste det ju också vara skriven på engelska. ** Резюме на английском языке: часто лучше использовать в своем коде только английский язык. ** –