python模块不能从字典中读取

时间:2017-11-14 01:22:49

标签: python csv dictionary

我试图创建一个口袋妖怪通过(id)存储在" poked.csv"文件。该程序正在运行,但它没有识别指定的(id) - 不确定它是否没有识别字典或其他内容正在进行..

这是我的密钥词典:值

from pokemon import *
from move import Move

pokemon_entries ={}

my_file=open("pokedex.csv", "r")
my_file.readline()
for line in my_file:
    pokedex_id, name, type1, type2, weight, height, move_name, move_power = line.strip().split(",")
    pokemon_entry={}
    pokemon_entry["pokedex_id"]=int(pokedex_id)
    pokemon_entry["name"]=name
    pokemon_entry["type1"]=type1
    pokemon_entry["type2"]=type2
    pokemon_entry["weight"]=float(weight)
    pokemon_entry["height"]=float(height)
    pokemon_entry["move"]=Move

    pokemon_entries[int(pokedex_id)]=pokemon_entry

my_file.close()

我的csv具有匹配的键:上面引用的所有属性的值。 她是我尝试运行的方法:

def generate_pokemon(id):
    pokemon=Pokemon()
    if id in pokemon_entries.keys():
        name=pokemon_entries[id]["name"]
        type1=pokemon_entries[id]["type1"]
        type2=pokemon_entries[id]["type2"]
        cp=random.randint(10,500)    
        hp=random.randint(10, max(10,1.5*cp//10))
        weight=round(pokemon_entries[id]["weight"]*(1+0.5*random.uniform(-1,1)),2)
        height=round(pokemon_entries[id]["height"]*(1+0.5*random.uniform(-1,1)),2)
        sex=random.choice(["M","F"])
    else:
        print("Entered ID does not exist in Pokedex! A default pokemon will be created.")

    return pokemon

无论我指定的(id)如何,我都会收到"输入的ID不存在..."信息。我是创建字典和阅读文件的新手,所以任何帮助都表示赞赏。是的,这是HW。

提前致谢..

0 个答案:

没有答案