小编Miu*_*ujo的帖子

保存/加载字典

我发现其他几个人在这方面寻求帮助,但并不是我想要做的具体事情。我有一本包含各种格式(int、str、bool 等)的字典,我正在尝试保存它,以便稍后加载它。这是代码的基本版本,没有与此无关的所有额外陷阱。

petStats = { 'name':"", 'int':1, 'bool':False }

def petSave(pet):
    with open(pet['name']+".txt", "w+") as file:
        for k,v in pet.items():
            file.write(str(k) + ':' + str(v) + "\n")

def digimonLoad(petName):
    dStat = {}
    with open(petName+".txt", "r") as file:
        for line in file:
            (key, val) = line.split(":")
            dStat[str(key)] = val
    print(petName,"found. Loading",petName+".")
    return dStat
Run Code Online (Sandbox Code Playgroud)

简而言之,我只是通过在每行上保存一个带有 Key:Value 的文本文件来强制执行它,然后在加载时将它们全部拆分。不幸的是,这将我所有的 int 和 bool 都变成了字符串。是否有一种文件格式可以用来将字典保存到(我不需要能够阅读它,但很方便)我可以轻松加载回来?

这适用于基本字典,但如果我开始添加诸如数组之类的东西,这将变得一发不可收拾。

python python-3.x

2
推荐指数
2
解决办法
2852
查看次数

ArrayLists数组?

所以,简单的问题似乎令我感到困惑.我有一系列ArrayList因为它们需要可扩展.现在,我希望能够通过简单的for循环从每个对象中拉出第n个对象.

public ArrayList<String> name = new ArrayList<String>();
public ArrayList<Integer> stamina = new ArrayList<Integer>();
public ArrayList<Integer> heart = new ArrayList<Integer>();
public ArrayList<Integer> intel = new ArrayList<Integer>();
public ArrayList<Integer> speed = new ArrayList<Integer>();
Run Code Online (Sandbox Code Playgroud)

我将在稍后的代码中添加/提取这些信息,因此我希望通过单个2D数组可以轻松访问它.有点像,

racerInfo[][] = { name, stamina, heart, intel, speed };
Run Code Online (Sandbox Code Playgroud)

然后,如果我想要赛车编号为7的信息

for ( int i=0; i<=racerInfo.length - 1; i++ ) {
    System.out.println(racerInfo[i][7]);
}
Run Code Online (Sandbox Code Playgroud)

我该如何设置racerInfo场地?我似乎无法弄清楚正确的设置.如果你有任何更好的建议,我完全开放,因为我仍然是新的,只是试图拼凑一些有效的东西.

java arrays arraylist

0
推荐指数
1
解决办法
109
查看次数

标签 统计

arraylist ×1

arrays ×1

java ×1

python ×1

python-3.x ×1