如何在python中将数组保存到文件中

2024-09-27 07:28:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用python为我的游戏创建一个引导板,我希望它保存下来,以便下次打开游戏时可以检索到它。在

Leader_board  = []
Temp_Leader_board = []

PlayerName = str(No1+No2+No3+No4+No5+No6+No7+No8)
Array = [str(Deaths),PlayerName]
Temp_Leader_board.append(Array)
Leader_board = sorted(Temp_Leader_board, key=lambda player: player[0])

最后一行是把分数从小到大排序。在


Tags: board游戏arraytempleaderplayerstrno1
3条回答

我对简单序列化的首选解决方案是yaml。它的优点是可读性强,但缺点是只能序列化简单的数据结构。在这种情况下,它似乎可以正常工作:

测试代码:

leader_board = [
    [30, 'Player A'],
    [10, 'Player B'],
]

import yaml

# save the leader board
with open('LeaderBoard.yml', 'w') as f:
    f.write(yaml.dump(leader_board))

# read the leader board from yaml file
with open('LeaderBoard.yml', 'r') as f:
    read_leader_board = yaml.load(f.read())

# show yaml format and restored data
print(yaml.dump(leader_board))
print(read_leader_board )

结果:

^{pr2}$

正如@matusko和@Christian Dean所说,您需要的是序列化,这是Python内置的一个称为pickle的模块。就个人而言,由于这似乎是一个更简单的序列化用例,我建议使用cPickle,它与pickle做同样的事情,但速度更快,因为它是用C.See here编写的,以指导如何使用它们序列化不同类型的数据。在

最简单的方法是使用pickle

相关问题 更多 >

    热门问题