如何提取以指定字符串开头的单元格

时间:2019-01-26 03:49:25

标签: python openpyxl

为什么返回错误“ TypeError:'NoneType'对象不可迭代”? 如何提取以“ 1_”开头的单元格?

谢谢!

<bean id="A" 
class="mystical.framework.bean.i.need.2.reference"></bean>

<bean id="B" 
class="my.config.save.slash.access.bean" 
depends-on="A">
    <property name="a" ref="A" />
</bean>


<bean id="C" 
class="property.bean.needs.config.info" 
depends-on="A,B"></bean>

2 个答案:

答案 0 :(得分:0)

此错误可能不是加载文件中的错误!尽管您可以使用print语句再次检查。对于像openpyxl和xlwings这样的模块,如果没有在单元格中明确声明数据,则该模块将返回值None,因此您可能会尝试对None值执行字符串操作。您可以尝试通过以下方式对此进行补救:

for cell in list(sheet.columns)[3]:
    value = cell.value
    if value: # ensure you are not reading an empty cell
        if value.startswith('1_'):
            print(value)

但是,如果没有完整的堆栈跟踪,我们只能推测您为什么会收到错误

答案 1 :(得分:0)

阅读官方文档始终是一个不错的起点。

wb = openpyxl.load_workbook('sample.xlsx')
sheet = wb['strings']

for cell in sheet['D']:
    value = cell.value
    if cell.value and value.startswith('1_'):
        print(value)