假设我有category="foo"
和一个NoSQL query={"category"=category}
,每当我重构变量名category
时,如果我想采用它,我需要在查询中手动更改它。
在Python 3.8+中,我可以通过变量本身获得字符串形式的变量名。
现在我可以使用query={f"{category=}".split("=")[0]=category}
,重构也会改变查询,这适用于任何数据库查询或语句(SQL等)。
这会是一个糟糕的实践吗?不仅仅是关于Python,而是任何可能的语言。
1条答案
按热度按时间vyswwuz21#
这是不是一种不好的做法?
是的,局部变量的名称不需要与数据存储中的字段相关联。
你应该能够用任何python变量来检索一条记录并过滤它的字段,不管它的名字是什么,也不管它是否嵌套在一个更大的数据结构中。
在伪代码中: