【问题标题】:python openpyxl.load_workbook(r"mypath")python openpyxl.load_workbook(r"mypath")
【发布时间】:2018-09-14 09:40:46
【问题描述】:

我想使用这段代码 openpyxl.load_workbook(r"mypath") 但唯一的区别是 mypath 是一个可变路径,我每次都会根据不同文件夹的循环进行更改。

PathsList = []
for folderName, subFolders, fileNames in os.walk              
                fileNamesList.append(os.path.basename(fileName))
                PathsList.append(os.path.abspath(fileName))

or i in range(len(fileNamesList)):
    j = 1
    while j < len(fileNamesList):
        if(first3isdigit(fileNamesList[i])) == (first3isdigit(fileNamesList[j])):
            if(in_fileName_DOORS in str(fileNamesList[i]) and in_fileName_TAF in str(fileNamesList[j])):
                mypath = PathsList[i]
        File = openpyxl.load_workbook(r'mypath ')
                wsFile = File.active

mypath 作为变量不可读,有什么解决方案吗! 编辑1:我也想过

File = openpyxl.load_workbook(exec(r'%s' % (mypath))

但不能,因为 exec 不能在括号内

【问题讨论】:

    标签: python excel load openpyxl


    【解决方案1】:

    这段代码

    File = openpyxl.load_workbook(r'mypath ')
    

    尝试将原始字符串 'mypath ' 作为参数传递给 load_workbook 方法。

    如果要将mypath 变量的内容传递给方法,则应删除撇号和r 标记。

    File = openpyxl.load_workbook(mypath)
    

    这是基本的python 合成器。您可以在documentation 中了解更多信息。

    如果这是您需要的,请告诉我。

    编辑: 如果斜线是一个问题,您可以执行以下操作:

    File = openpyxl.load_workbook(mypath.replace('\\','/')
    

    【讨论】:

    • 它没用,它在 mypath 之前需要这个 r 我正在搜索的是如何 File = openpyxl.load_workbook(r mypath) 而不是 File = openpyxl.load_workbook(r'C:\spam \spam\spam\text.xlsm')
    • @MahmoudElnahal 我已经编辑了我的答案。让我知道它是否有效。另外,在此行之前添加print(mypath) 并编辑您的问题,这样我们就可以看到形成了哪些文件路径。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-20
    • 1970-01-01
    相关资源
    最近更新 更多