首页 > 解决方案 > 跳过未找到的字符串 Python

问题描述

这个脚本还有更多内容,但我删掉了我目前正在处理的部分。这是for循环的一部分,有很多 excel 文件需要循环。

counts4=stops3[stops3['Name']==(String2)]是我遇到一些问题的地方。我收到一条错误消息,指出"index is out of bounds"因为它找不到字符串。我有一些可能不在里面stops3的字符串,如果找不到字符串,有没有办法跳过它并继续下一个字符串?当循环遍历每个 excel 文件时,字符串会发生变化,我有 100 个文件。

stops2 = pd.read_excel(Hold,usecols = "B,D", skiprows=3,header=None,index=False)
stops2.columns=['Hold','Name']
stops3=stops2[stops2.Hold != 'Pace']
String2=ws1['A1'].value[28:]
counts4=stops3[stops3['Name']==(String2)]
counts5=counts4['Name'].value_counts()
z3=counts5[0]

标签: pythonstringloopsskip

解决方案


您可以编写一个简单的if条件,仅当 String2 有值时才执行以下代码。

if len(String2) > 0:
    counts4=stops3[stops3['Name']==(String2)]
    counts5=counts4['Name'].value_counts()
    z3=counts5[0]

如果您可以包含有关您的 excel 文件的更多详细信息,那就太好了。那么有人会更容易回答你的问题。


推荐阅读