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

Python中的'not in c'与Python中的'e not in c'是否不同?[重复]

窦啸
2023-03-14
问题内容

这个问题已经在这里有了答案

8年前关闭。

可能重复:
使用“ not”和“ in”关键字的语法顺序

我的助教声称e not in c并非总是会产生与not e in c(他没有给出解释的 原因
)相同的结果。我从来没有亲自看过任何人代码中的第二种形式(除了他和他的书中解释了这两种形式
等效的),并且从未见过两种形式在行为上有所不同,因此我对此主张表示怀疑。没有通过Google找到任何东西,我决定来这里。

那么,有没有人知道两者的行为有所不同的任何情况的信息?


问题答案:

它们完全相同,因为两者都实际应用了not in比较:

In [25]: def func():
    'e' not in 'bee'
   ....:     
   ....:

In [27]: def func1():
    not 'e' in 'bee'
   ....:     
   ....:     
In [29]: dis.dis(func)
  2           0 LOAD_CONST               1 ('e')
              3 LOAD_CONST               2 ('bee')
              6 COMPARE_OP               7 (not in)
              9 POP_TOP             
             10 LOAD_CONST               0 (None)
             13 RETURN_VALUE

In [30]: dis.dis(func1)
  2           0 LOAD_CONST               1 ('e')
              3 LOAD_CONST               2 ('bee')
              6 COMPARE_OP               7 (not in)
              9 POP_TOP             
             10 LOAD_CONST               0 (None)
             13 RETURN_VALUE


 类似资料:
  • 我对硒有个奇怪的问题。 > 以下ruby代码: 根本不返回任何东西。 编辑:问题是页面加载速度不同。等待直到加载的页面解决问题。

  • 第二个数字,我想补充: 我尝试: #在这里我添加了第四个数字,但我不知道我该怎么做...

  • 我是Python新手,和许多人一样来自Matlab。我习惯于将我的函数定义为独立函数。只要函数保存在定义的Matlab路径中的某个位置,就可以从第二个脚本轻松调用它们。 我已经学会了如何在Python中定义(用户定义的)函数(def my_function()等),但我在Google搜索中发现了一种在单独的应用程序中定义函数的方法。py文件A,以及如何在另一个脚本B中调用它。我能找到的所有帮助文件

  • 问题内容: 在下面的代码中,我想计算序列中G和C字符的百分比。在Python 3中我可以正确获取,但是在Python 2中我可以获取。为什么结果不同? 问题答案: 是Python 3中的另一个运算符;在Python 2中,当将其应用于2个整数操作数时会更改行为,并返回下限除法的结果: 加: 代码的顶部以在Python 2中使用浮点除法,或用于强制Python 3使用整数除法: 使用这些技术中的任何

  • 问题内容: 如果路径不存在,我正在尝试创建目录,但是!(不是)运算符不起作用。我不确定如何在Python中取反…执行此操作的正确方法是什么? 问题答案: Python中的求反运算符为。因此,只需将替换为即可。 对于您的示例,请执行以下操作: 对于您的特定示例(如Neil在评论中所述),您不必使用模块,只需使用即可获得所需的结果,并添加了异常处理优势。 例:

  • 我有一个数据框,有3列,如下所示: 我想添加列,它是中一些列的总和,但不是每行的同一列,例如 只有第1行和第3行是同一列的和,第0行和第2行是其他列的和。 我在Stack over flow上发现的总是整个数据帧的特定列,但在本例中是不同的。 我能做的最好的方法是什么?