当前位置: 首页 > 面试题库 >

对Python字符串使用“ and”和“ or”运算符

蒋权
2023-03-14
问题内容

我不明白这行的含义:

parameter and (" " + parameter) or ""

其中 参数 是字符串

为什么通常要对python字符串使用andor运算符?


问题答案:

假设您使用的是的值parameter,但如果说的是值None,那么您希望使用一个空字符串""代替None。您一般会做什么?

if parameter:
    # use parameter (well your expression using `" " + parameter` in this case
else:
    # use ""

这就是表达的意思。首先,你应该明白andor运营商的作用:

  • a and b返回b如果是True,否则html" target="_blank">返回a
  • a or b返回a如果是True,否则返回b

所以,你的表情:

parameter and (" " + parameter) or ""

实际上等效于:

(parameter and (" " + parameter)) or  ""
#    A1               A2               B
#           A                     or   B

在以下情况下如何计算表达式:

  • parameter - A1 评估为True

    result = (True and " " + parameter) or ""
    

    result = (” ” + parameter) or “”

    result = ” ” + parameter

  • parameter - A1None

    result = (None and " " + parameter) or ""
    

    result = None or “”

    result = “”

作为一般建议,使用A if C else B表格表达式作为条件表达式更好,更易读。因此,您最好使用:

" " + parameter if parameter else ""

而不是给定的表达式。有关表达式背后的动机,请参阅PEP
308-条件
if-else表达式。



 类似资料:
  • 主要内容:AND 运算符,语法,实例,OR 运算符,语法,实例SQLite 的 AND 和 OR 运算符用于编译多个条件来缩小在 SQLite 语句中所选的数据。这两个运算符被称为连接运算符。 这些运算符为同一个 SQLite 语句中不同的运算符之间的多个比较提供了可能。 AND 运算符 AND 运算符允许在一个 SQL 语句的 WHERE 子句中的多个条件的存在。使用 AND 运算符时,只有当所有条件都为真(true)时,整个条件为真(true)。例如,只

  • AND & OR 运算符用于基于一个以上的条件对记录进行过滤。 SQL AND & OR 运算符 如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。 如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。 演示数据库 在本教程中,我们将使用 RUNOOB 样本数据库。 下面是选自 "Websites" 表的数据: +----+--------------+--

  • 我无法在Python中生成显示布尔运算符优先规则与短路评估相结合的示例。我可以使用以下方法显示运算符优先级: 但当我把它改成这样时,短路的问题就显现出来了: 对于四种可能性中的每一种,当之前的表达式为时,它是唯一的求值表达式。如果运算符优先级有效,则应打印或(带有短路),因为应首先计算。

  • 问题内容: 我有以下格式的json文件:- 我想根据以下内容查询文档:- 我尝试使用SearchSourceBuilder和QueryBuilders.matchQuery,但无法使用AND和OR运算符放置多个子查询。 我们如何使用OR和AND运算符查询elasticsearch? 问题答案: 我认为在这种情况下,Bool查询是最好的选择。 就像是 : 在Java中: 该部分是S,该部分都或多或少

  • 1 and 2 or 3 这个与 三目运算符 有什么区别

  • 问题内容: 这是我代表三角形的自定义类。我试着写代码,查看是否,以及大于0,这将意味着我有角,角,角。 在下面,您将看到检查A和B的代码,但是当我使用它时,它可以正常工作。我相信我没有正确使用。有任何想法吗?这是我的称呼方式: 问题答案: 您应该写: “ ”是按位运算符,不适合布尔运算。在Python中,“ ”的等效项是“和”。 检查所需内容的一种较短方法是使用“ in”运算符: 您可以使用“ i