我用下面的方式编写程序
from xml.etree.ElementTree import ET
xmlroot = ET.fromstring([my xml content])
for element in xmlroot.iterfind(".//mytag"):
do some thing
Run Code Online (Sandbox Code Playgroud)
它在我的python(v2.7.1)上工作正常,但在我将其复制到另一台安装了python v2.6.x的计算机后,iterfind()不支持,在python文档中,下面的描述列出
的findall(匹配)
按标签名称或路径查找所有匹配的子元素.返回包含文档顺序中所有匹配元素的列表.
iterfind(匹配)
按标签名称或路径查找所有匹配的子元素.返回一个iterable,以文档顺序生成所有匹配元素.
版本2.7中的新功能.
我的问题是:这两个功能是否相同?这两个功能有什么区别
现在我需要得到{"teams":[1, 2, 35]},我写下面的代码.
use JSON
my @array;
@array=(1, 2, 35);
my %hash;
$hash{"teams"}=@array;
$json = encode_json(\%hash);
print $json."\n";
Run Code Online (Sandbox Code Playgroud)
但我得到了{"teams":3}.
我的问题是可以在Perl中使用Hash的值吗?