che*_*mex 4 python assert dataframe pandas
我有 Pandas 数据框,它具有“状态”列的长度。我 100% 确定,该列中所有值的长度都是 2。当我尝试编写断言语句时,出现断言错误。我不确定我是否正确使用了断言语句。请帮忙。
assert df['state'].str.len().all() == 2
Run Code Online (Sandbox Code Playgroud)
我的理解:断言 state 列中的所有值的长度都等于 2。请告诉我这是否正确。谢谢。
你的顺序有点乱。
在您的代码中df['state'].str.len().all()
检查所有长度是否不同于0
,它返回单个True/False
或1/0
。当您将其与单个 进行比较时2
,它总是False
并触发assert
.
它应该是:
assert (df['state'].str.len() == 2).all()
Run Code Online (Sandbox Code Playgroud)