小编Mys*_*ous的帖子

在if-else子句的else命令中执行"nothing"

码:

for i in range(1000):
    print(i) if i%10==0 else pass
Run Code Online (Sandbox Code Playgroud)

错误:

File "<ipython-input-117-6f18883a9539>", line 2
    print(i) if i%10==0 else pass
                            ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

为什么不"通过"在这里工作?

python python-3.x

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

通过np.select的“default”参数输入空值

尝试在给定的特定条件下将值写入列,默认值为 Null 值,代码如下:

import pandas as pd
import numpy as np
df = pd.DataFrame({'col': list('ABCDE')})

cond1 = df['col'].eq('A')
cond2 = df['col'].isin(['B', 'E'])

df['new_col'] = np.select([cond1, cond2], ['foo', 'bar'], default=np.NaN)
Run Code Online (Sandbox Code Playgroud)

但它'nan'在列中给出字符串值。

df['new_col'].unique()
#array(['foo', 'bar', 'nan'], dtype=object)
Run Code Online (Sandbox Code Playgroud)

有没有办法直接从这段代码中将其更改为 null?

numpy python-3.x

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

标签 统计

python-3.x ×2

numpy ×1

python ×1