python循环从第一个元素开始,从第0个元素开始

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

我正在使用Python(在PyCharm上运行)编写一个简单的基于文本的RPG战斗模拟器。我创建了一个名为Person的类,它具有如下初始化参数:

def __init__(self, name, HP, MP, ATK, DEF, magic, items):
    self.name = name
    self.HP = HP
    etc...

该类在main中针对3个唯一的玩家(player1, player2, player3)实例化3次。我也有一个get_stats(self)函数,它执行>

print(self.name + ", HP: " + self.HP + ", MP: " + self.MP)

但是当我在main中运行时

for player in players:
    player.get_stats()

其中players = {player1, player2, player3},我得到输出(请注意,MP / HP值是任意的:]

name2, HP: 200, MP: 200
name3, HP: 300, MP: 300
name1, HP: 100, MP: 100

如果是players = {player0, player1, player2, player3},我得到的输出是:

name2, HP: 200, MP: 200
name3, HP: 300, MP: 300
name0, HP: 400, MP: 400
name1, HP: 100, MP: 100
    

我正在使用Python(在PyCharm上运行)编写一个简单的基于文本的RPG战斗模拟器。我创建了一个名为Person的类,该类具有如下初始化参数:def __init __(self,name,HP,...

python arrays for-loop pycharm
1个回答
1
投票

[{}在python中创建一个set,该命令没有排序:元素的输入方式没有存储。


0
投票

您正在使用{}语法,该语法适用于Python中的set。集没有顺序,并且在for语句中使用时将随机产生其成员。

© www.soinside.com 2019 - 2024. All rights reserved.