os.步行寻找改进

2024-10-04 03:17:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用os.walk搜索一个html文件,但返回该文件花了2分钟。 有什么改进表演的建议吗?你知道吗

path1 = "//ggco/kk"
shp_list = []
for dirpath, dirnames, y in os.walk(path1):
    for k in y:
        k.startswith(Lot_Operation_combine) and k.endswith(".html")
        fullpath = os.path.join(dirpath, k)
        shp_list.append(fullpath)

        if os.path.isfile(fullpath):
            path = "//ggco/kk"
            shp_list = []
            for dirpath, dirnames, x in os.walk(path):
                for f in x:
                    if f.startswith(Lot_Operation_combine1) and f.endswith(".html"):
                        fullpath = os.path.join(dirpath, f)
                        shp_list.append(fullpath)

                        if os.path.isfile(fullpath):
                            with open(fullpath, 'r')as f:
                                f_contens = f.read()
                                print(f_contens)

                            kau = f_contens
                            context = {"Final": kau}
                            return render(request, 'Output.html', context)

        else:

            path = "//ggco/kk"
            shp_list = []
            for dirpath, dirnames, x in os.walk(path):

                for f in x:
                    if f.startswith(Lot_Operation_1A) and f.endswith(".html"):
                        fullpath = os.path.join(dirpath, f)
                        shp_list.append(fullpath)

                        if os.path.isfile(fullpath):
                            with open(fullpath, 'r')as f:
                                f_contens = f.read()

                                print(f_contens)

                            kau = f_contens
                            context = {

                                "Final": kau
                            }
                            return render(request, 'Output.html', context)

我是python编程语言的新手。你知道吗

你有没有想过用os.walk来搜索一个性能更好的特定文件?你知道吗

我希望你们能分享一些关于这个问题的想法。你知道吗

谢谢你。你知道吗


Tags: 文件pathinforifoshtmlcontext
1条回答
网友
1楼 · 发布于 2024-10-04 03:17:20

我认为你可以优化你的代码很多,你有多个冗余检查。把那些东西都扔掉

只要保留这部分代码就行了

path = "//ggco/kk"
shp_list = []
for dirpath, dirnames, x in os.walk(path):

    for f in x:
        if f.startswith(Lot_Operation_combine1) and f.endswith(".html"):
            fullpath = os.path.join(dirpath, f)
            shp_list.append(fullpath)
            kau = ''                
            with open(fullpath, 'r')as f:
                f_contens = f.read()

                print(f_contens)

                kau = f_contens
                context = {"Final": kau}

您可以将最后一行添加到要从函数返回数据的位置

相关问题 更多 >