Php 我如何用Python编写这个?
我已经开发了一个脚本,我想用python编写这个php代码 如何在python中创建thisPhp 我如何用Python编写这个?,php,python,Php,Python,我已经开发了一个脚本,我想用python编写这个php代码 如何在python中创建thiscategories数组 到目前为止,我已经做到了: $class->categories[$cat->category_parent_id][]=$cat; 但我不确定这是否是正确的实现。让我们来分析一下: categories_c.insert(row["category_parent_id"], row) 这将访问$class对象的类别属性。在Python中,这是: $class-&
categories
数组
到目前为止,我已经做到了:
$class->categories[$cat->category_parent_id][]=$cat;
但我不确定这是否是正确的实现。让我们来分析一下:
categories_c.insert(row["category_parent_id"], row)
这将访问$class
对象的类别
属性。在Python中,这是:
$class->categories
在这里,我们假设categories
是一个dict
,因为您想这样做:
klass.categories # (class is a reserved keyword, using klass instead)
这将访问数组的特定键,在Python中,该键将是dict的键:
categories[$cat->category_parent_id]
现在是棘手的部分:
categories[cat.category_parent_id]
这会将$cat
推入阵列。在Python中,这意味着向列表添加一个值。如果子数组不存在,PHP将根据需要隐式创建新的子数组Python没有。这是唯一需要额外考虑的部分。您需要知道的是,dict
中是否已经存在categories[cat.category\u parent\u id]
,或者是否要在此过程中创建它
如果您知道它存在,如果categories
是一个list
s的dict
,其中所有cat.categority\u parent\u id
键都已预填充,那么它就这么简单:
...[] = $cat
但是,如果密钥不存在,则必须确保已创建密钥,并且在第一次访问密钥时将其值设置为列表。Python中最简洁的表示法是dict.setdefault
方法:
klass.categories[cat.category_parent_id].append(cat)
如果categories[cat.categority\u parent\u id]
存在,则返回它,您可以将其追加到。如果它不存在,则创建并初始化为[]
,然后返回。StackOverflow不是代码翻译服务一种方法可以是学习python。另一个是雇佣一名懂python的实习生,我忘了提到的是,cat
这里有一条通过启动mysql查询获得的记录。这有关系吗?没有?对大概这取决于它到底是什么,您希望它是什么,以及它是否会造成任何问题。对于类别中的子类别[cat[“category\u parent\u id”]:
这是从类别检索数据的正确实现吗
?我不知道,因为我没有足够的上下文来回答这个问题。好的,我不知道你的数据是什么样子的。如前所述,我在回答中做了一些假设。如果你需要更详细的帮助,你必须提供更多的细节。为此发布一个新问题。
klass.categories.setdefault(cat.category_parent_id, []).append(cat)