Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python sqlachemy查询方法是如何工作的?_Python_Syntax_Sqlalchemy - Fatal编程技术网

Python sqlachemy查询方法是如何工作的?

Python sqlachemy查询方法是如何工作的?,python,syntax,sqlalchemy,Python,Syntax,Sqlalchemy,我正在学习sqlachemy,我对Python比较陌生 当我阅读其文档时,我看到,例如: query.filter(User.name==“ed”) Python不会对表达式User.name=='ed'求值,然后将结果(布尔值)传递给query.filter方法吗 这种语法是如何工作的?Python是否支持C++之类的操作符重载?< P>SqLalCyy使用各种超负荷操作符行为。 对于=,\uuuu eq\uuu()方法在编译时返回表示SQL表达式的特殊对象。要引用有关“丰富比较”挂钩的文档,

我正在学习sqlachemy,我对Python比较陌生

当我阅读其文档时,我看到,例如:

query.filter(User.name==“ed”)

Python不会对表达式
User.name=='ed'
求值,然后将结果(布尔值)传递给
query.filter
方法吗


这种语法是如何工作的?Python是否支持C++之类的操作符重载?

< P>SqLalCyy使用各种超负荷操作符行为。

对于
=
\uuuu eq\uuu()
方法在编译时返回表示SQL表达式的特殊对象。要引用有关“丰富比较”挂钩的文档,请执行以下操作:

按照惯例,将返回
False
True
以进行成功比较。但是,这些方法可以返回任何值,因此如果在布尔上下文中使用比较运算符(例如,在
if
语句的条件下),Python将对该值调用
bool()
,以确定结果是真还是假


有关实现的特定钩子,请参阅SQLAlchemy源代码中的。

如果您有雄心壮志,请阅读此处的第20.5节: