编写一个Python程序,删除序列中包含恰好两个空格的元素。


输入

假设你有一个序列,

0    This is pandas
1    python script
2    pandas series

输出

删除包含恰好两个空格的元素后的结果,

1    python script
2    pandas series

方案1

  • 定义一个序列。

  • 创建lambda过滤方法,应用正则表达式查找空格总数不等于2的元素,如下所示:

pd.Series(filter(lambda x:len(re.findall(r" ",x))!=2,data))
  • 最后,使用isin()检查序列中的值列表。

方案2

  • 定义一个序列。

  • 创建一个for循环,逐个迭代元素,并设置if条件来统计等于2的空格数。如果元素匹配,则弹出该值。定义如下:

for i,j in data.items():
   if(j.count(' ')==2):
      data.pop(i)

示例

让我们看看下面的实现,以便更好地理解。

import pandas as pd
import re
l = ["This is pandas","python script","pandas series"]
data = pd.Series(l)
result = pd.Series(filter(lambda x:len(re.findall(r" ",x))!=2,data))
print(data[data.isin(result)])

输出

1    python script
2    pandas series
dtype: object

方案3

示例

import pandas as pd
l = ["This is pandas","python script","pandas Series"]
data = pd.Series(l)
for i,j in data.items():
   if(j.count(' ')==2):
      data.pop(i)
print(data)

输出

1    python script
2    pandas series
dtype: object

更新于:2021年2月24日

177 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告