所以我需要找出excel文件中有多少@。你知道吗
如果只有1页上的文件中有@,则返回我的当前代码。
我需要找出总共有多少个@,并且它应该在文件中存在的所有工作表中运行(每次编号/名称可以不同)。这有可能吗?你知道吗
def excel_contains_str(filename, search='@'):
return pd.read_excel(filename).astype(str).apply(lambda x: x.str.contains(search)).any().any()
Tags:
要读取excel文件中的所有工作表,请将
sheet_name=None
传递给read_excel
:您的解决方案是可行的,尽管您有数百列的可能性很小,但如果第3列本身有匹配项,则搜索所有列是有点浪费的。因此,考虑对列进行迭代,并使用内置的
any
缩短操作。你知道吗在读取列时,请指定
dtype='str'
,以便将它们作为字符串读入。这样就不需要后续的astype
调用。你知道吗但是,如果您需要匹配的个数,您将别无选择,只能使用
apply
并对值求和。你知道吗演示-
相关问题 更多 >
编程相关推荐