繁体   English   中英

使用 if 语句在列表中查找特定的字符串值

[英]Using if statement to find specific string values in a list

我在 dataframe 中有一列由列表组成。 我正在尝试使用 if 语句来识别这些列表中包含任何特殊字符或数字的值。 我试图识别的数字是字符串值,而不是数字。 我曾尝试使用正则表达式来识别这些值,但我不知道如何在 if 语句中使用它。

下面的代码给了我我想要的,但我知道必须有一种更简洁的方法来做到这一点:

if '-' in row['col_name'].iloc[0] or '/' in row['col_name'].iloc[0] or '0' in row['col_name'].iloc[0] or '1' in row['col_name'].iloc[0]:

return action

在这个例子中我只包含了一些特殊字符和数字。 我想找到任何特殊字符或数值。 先感谢您!

关于这篇文章,以下可能是您需要的:

special_chars = ['-', '/', '0', '1']

# returns df with only the rows in which the column contains any of these characters
result_df = df.loc[df['col_name'].str.contains('|'.join(special_chars))]

'|' 将 function 作为正则表达式字符。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM