当前位置:  开发笔记 > 编程语言 > 正文

AttributeError:'list'对象没有属性'endswith'

如何解决《AttributeError:'list'对象没有属性'endswith'》经验,为你挑选了1个好方法。

我试图访问给定的文件夹,然后访问其所有子文件夹(20+),然后访问xlsx每个子文件夹内的唯一文件进行一些计算.

我的代码使用load_workbookopenpyxl.我需要一个for循环来读取同一文件夹中的现有文件,但这些文件将其名称从子文件夹更改为子文件夹.为了解决将文件load_workbook的精确名称xlsx作为输入的事实,我选择了这个解决方案:

filename=os.path.basename(file)
wb=load_workbook(filename)

但它引发了这个错误:AttributeError: 'list' object has no attribute 'endswith'.如何解决我的解决方法?

我的完整脚本:

import os
from openpyxl import load_workbook

directoryPath=r'C:\Users\MyName\Desktop\MyFolder'
os.chdir(directoryPath)
folder_list=os.listdir(directoryPath)
for folders, sub_folders, file in os.walk(directoryPath):
    for name in file:
        if file.endswith(".xlsx"):
            filename=os.path.basename(file) #This is supposed to dump the name of the current file to a variable to be used by load_workbook
            wb=load_workbook(filename)
            cell_range = wb['A1':'A10'] #Accessing some cells

            #some calculations

Marcin Zdune.. 11

更改

if file.endswith(".xlsx"):

if name.endswith(".xlsx"):



1> Marcin Zdune..:

更改

if file.endswith(".xlsx"):

if name.endswith(".xlsx"):

推荐阅读
手机用户2402852307
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有