我正在编写一个代码,根据许多可能的不同标准在.json中搜索有关所有Magic the Gathering卡的数据。
它工作得很好,除非卡片中的文字中包含“ - ”等字符,我的代码将完全忽略该文本。它的文本字段是空白的。
在代码中的某个时刻,卡片的文本被附加到列表中,也许这就是问题所在,因为我制作了一个简单的.py文件来测试不同的东西,我可以得到文本。
for i in data:
if data[i]["name"].find(" some name* ")!=-1:
print data[i]["text"]
这实际上是有效的。它可以完美地打印出卡片的文字。
但是,当我将其切换到
时for i in data:
if data[i]["name"].find(" some name* ")!=-1:
somelist.append(data[i]["text"]
print somelist
我会再次发现同样的问题。我会得到没有“ - ”字符的卡片文本。
编辑:这是python将忽略的文本示例:
"+3: Destroy target noncreature permanent.\n−2: Gain control of target creature.\n−9: Nicol Bolas, Planeswalker deals 7 damage to target player. That player discards seven cards, then sacrifices seven permanents."
这个'9'应该翻译成“ - ”。
每次都被忽略的另一个文本示例是:
"Target creature gets -1/-1 until end of turn.\nMorbid — That creature gets -13/-13 until end of turn instead if a creature died this turn."