相关疑难解决方法(0)

布尔标识== True vs为True

使用if foo is None而不是if foo == None测试值是否具体是标准惯例None.

如果你想确定一个值是否正确True(不仅仅是一个真实的值),是否有任何理由使用if foo == True而不是if foo is True?这在CPython(2.x和3.x),Jython,PyPy等实现之间是否有所不同?

示例:say True用作要与值'bar'或任何其他类似真值的值区分开的单例值:

if foo is True: # vs foo == True
    ...
elif foo == 'bar':
    ...
Run Code Online (Sandbox Code Playgroud)

是否存在使用if foo is True会产生不同结果的情况if foo == True

注意:我知道Python布尔值 - 如果x:,则vs x == True,vs如果x为True.但是,它仅解决是否if foo,if foo == Trueif foo is True通常应用于确定是否foo具有真实值. …

python pypy boolean jython cpython

50
推荐指数
5
解决办法
4万
查看次数

“ if x == True”和“ if x:”有什么区别?

你好stackoverflow社区:-)

我目前正在学习Python,但我并不完全理解“ True / False”的概念。

在Python中,数字0与“假”相关,数字1与“真”相关。

当我写下面的代码

x = 2
y = 1

if y == True:
    print("Y is True")
if x == True:
    print("X is True")
else:
    print("X is False")
Run Code Online (Sandbox Code Playgroud)

我得到“ Y为真”,因为“ 1”为真。我得到“ X为假”,但我认为这也应该为“ True”,因为存在一个值(x = 2)而不是“ None,0等”。

当我写

if x:
    print("X is True")
else:
    print("X is False")
Run Code Online (Sandbox Code Playgroud)

然后我得到“ X为True”,因为x不为空,因此为真。

“ if x:”和“ if x == True”之间的确切区别是什么?

python

11
推荐指数
2
解决办法
356
查看次数

Flake8 错误:E712 与 True 的比较应该是“if cond is True:”或“if cond:”

if user.item.purchase.status == True:
Run Code Online (Sandbox Code Playgroud)

...使用 flake8 检查时产生错误:

E712 与 True 的比较应该是“if cond is True:”或“if cond:”

status具有三个有效值:未定义、True 和 False。

python if-statement flake8

6
推荐指数
1
解决办法
9758
查看次数

了解pandas中的lambda函数

我正在尝试解决Python课程的问题,发现有人在github中为同一个问题实现了解决方案.我只是想了解github中给出的解决方案.

我有一个名为Top15的pandas数据框,有15个国家,数据框中的一列是'HighRenew'.此列存储每个国家/地区使用的可再生能源的百分比.我的任务是将'HighRenew'列中的列值转换为布尔数据类型.

如果特定国家/地区的价值高于所有15个国家/地区的可再生能源中位数百分比,那么我应将其编码为1,否则应将其编码为0."HighRenew"列将从数据框中切割为系列,即复制如下.

Country
China                  True
United States         False
Japan                 False
United Kingdom        False
Russian Federation     True
Canada                 True
Germany                True
India                 False
France                 True
South Korea           False
Italy                  True
Spain                  True
Iran                  False
Australia             False
Brazil                 True
Name: HighRenew, dtype: bool
Run Code Online (Sandbox Code Playgroud)

github解决方案分3个步骤实现,其中我理解前2个但不是最后一个使用lambda函数的解决方案.有人可以解释这个lambda函数是如何工作的吗?

median_value = Top15['% Renewable'].median()
Top15['HighRenew'] = Top15['% Renewable']>=median_value
Top15['HighRenew'] = Top15['HighRenew'].apply(lambda x:1 if x else 0)
Run Code Online (Sandbox Code Playgroud)

python lambda pandas

3
推荐指数
1
解决办法
6768
查看次数

当条件不是陈述时,"条件"是什么意思?

我正在学习目前的功能,并以此为例:

def a(x, y, z):
     if x:
         return y
     else:
         return z
Run Code Online (Sandbox Code Playgroud)

不过,我不确定究竟if x是什么意思.x只是一个参数,而不是一个陈述,那么它怎么可能是真的还是假的?

python

1
推荐指数
1
解决办法
109
查看次数

标签 统计

python ×5

boolean ×1

cpython ×1

flake8 ×1

if-statement ×1

jython ×1

lambda ×1

pandas ×1

pypy ×1