python中符号" ~ "的意义和用法

十年热恋 提交于 2020-02-05 14:12:02

~ 在python中为反转的意思, 目前我知道的有两种用法.

一. 数值按位翻转

~ x 就是 - ( x + 1)

x = 2
print(~x)

-3

二. 布尔值取反

直接看案例

import pandas as pd

df = pd.DataFrame([[1,2,3,4,5,6,7,8,9,10],[1,2,3,4,5,6,7,8,9,10]], columns=['A','B','C','D','E','F','G','H','I','J'])
list1 = ['H', 'I', 'J', 'K', 'L', 'M', 'N']
df

在这里插入图片描述

我们希望从 df 中删去 list1 = [‘H’, ‘I’, ‘J’, ‘K’, ‘L’, ‘M’, ‘N’] 中的列,但是注意到df 中只有 ‘H’, ‘I’, ‘J’ 是在 list 里面的,我们需要把 ‘K’, ‘L’, ‘M’, ‘N’ 的列排除掉

df.columns.isin(list1)

array([False, False, False, False, False, False, False, True, True, True])

~df.columns.isin(list1)

array([ True, True, True, True, True, True, True, False, False, False])

df.columns[~df.columns.isin(list1)]

Index([‘A’, ‘B’, ‘C’, ‘D’, ‘E’, ‘F’, ‘G’], dtype=‘object’)

df[df.columns[~df.columns.isin(list1)]]

在这里插入图片描述

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!