最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python讀取多層嵌套文件夾中的文件實(shí)例

 更新時(shí)間:2020年02月27日 15:32:02   作者:李斯特塔洛紫心愛(ài)  
今天小編就為大家分享一篇python讀取多層嵌套文件夾中的文件實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

由于工作安排,需要讀取多層文件夾下嵌套的文件,文件夾的結(jié)構(gòu)如下圖所示:

想到了遞歸函數(shù),使用python的os.path.isfile方法判斷當(dāng)前是不是可執(zhí)行文件,如果不是再用os.listdir方法將子目錄循環(huán)判斷。

代碼如下

import os
path = 'abc'
path_read = []  #path_read saves all executable files

def check_if_dir(file_path):
  temp_list = os.listdir(file_path)  #put file name from file_path in temp_list
  for temp_list_each in temp_list:
    if os.path.isfile(file_path + '/' + temp_list_each):
      temp_path = file_path + '/' + temp_list_each
      if os.path.splitext(temp_path)[-1] == '.log':  #自己需要處理的是.log文件所以在此加一個(gè)判斷
        path_read.append(temp_path)
      else:
        continue
    else:
      check_if_dir(file_path + '/' + temp_list_each)  #loop traversal

check_if_dir(path)
#print(path_read)

實(shí)現(xiàn)思想就是把所有可執(zhí)行文件的路徑,通過(guò)字符串的拼接,完整的放進(jìn)一個(gè)list中,在后面的執(zhí)行步驟中依次提取進(jìn)行訪問(wèn)和操作。

由于自己拿到的數(shù)據(jù)集中,一個(gè)文件夾下要么全是文件夾,要么全是文件,所以在第一次寫(xiě)這個(gè)函數(shù)時(shí),通過(guò)temp_list[0] 直接判斷l(xiāng)ist中第一個(gè)文件是不是文件。

所以自己第一次寫(xiě)的代碼有一個(gè)很大的bug,就是當(dāng)一個(gè)文件夾下既有文件夾又有文件的情況下,會(huì)嘗試將一個(gè)文件夾按照文件讀取,報(bào)錯(cuò)。

第一次代碼如下:

import os
path = 'abc'
path_read = []  #path_read saves all executable files

def check_if_dir(file_path):
  temp_list = os.listdir(file_path)  #put file name from file_path in temp_list

  if os.path.isfile(file_path + '/' + temp_list[0]):  #此處直接判斷l(xiāng)ist中第一項(xiàng)是不是文件
    for temp_list_each in temp_list:
      temp_path = file_path + '/' + temp_list_each
      if os.path.splitext(temp_path)[-1] == '.log':
        path_read.append(temp_path)
      else:
        continue
  else:
    for temp_list_each in temp_list:
      check_if_dir(file_path + '/' + temp_list_each)  #loop traversal

check_if_dir(path)  #put all path in path_read
#print(path_read)

以上這篇python讀取多層嵌套文件夾中的文件實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python殺死一個(gè)線程的方法

    python殺死一個(gè)線程的方法

    由于python線程沒(méi)有提供abort方法,所以我們需要自己想辦法解決此問(wèn)題,面對(duì)這一問(wèn)題,小編幫大家解決phthon殺死一個(gè)線程的方法,需要的朋友一起來(lái)學(xué)習(xí)吧
    2015-09-09
  • Python中創(chuàng)建表格詳細(xì)過(guò)程

    Python中創(chuàng)建表格詳細(xì)過(guò)程

    這篇文章主要介紹了Python中創(chuàng)建表格,在python中使用tabulate庫(kù)來(lái)創(chuàng)建表格,并針對(duì)輸出形式進(jìn)行不斷改進(jìn)來(lái)美化輸出效果,并給出了代碼示例。需要的小伙伴可以參考一下
    2022-02-02
  • 詳解Tensorflow數(shù)據(jù)讀取有三種方式(next_batch)

    詳解Tensorflow數(shù)據(jù)讀取有三種方式(next_batch)

    本篇文章主要介紹了Tensorflow數(shù)據(jù)讀取有三種方式(next_batch),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-02-02
  • Python?nonlocal關(guān)鍵字?與?global?關(guān)鍵字解析

    Python?nonlocal關(guān)鍵字?與?global?關(guān)鍵字解析

    這篇文章主要介紹了Python?nonlocal關(guān)鍵字?與?global?關(guān)鍵字解析,nonlocal關(guān)鍵字用來(lái)在函數(shù)或其他作用域中使用外層變量,global關(guān)鍵字用來(lái)在函數(shù)或其他局部作用域中使用全局變量,更多香瓜內(nèi)容需要的小伙伴可以參考一下
    2022-03-03
  • python下setuptools的安裝詳解及No module named setuptools的解決方法

    python下setuptools的安裝詳解及No module named setuptools的解決方法

    這篇文章主要給大家介紹了關(guān)于python下setuptools的安裝以及No module named setuptools問(wèn)題的解決方法,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-07-07
  • for循環(huán)在Python中的工作原理詳細(xì)

    for循環(huán)在Python中的工作原理詳細(xì)

    for...in 是Python程序員使用最多的語(yǔ)句,for 循環(huán)用于迭代容器對(duì)象中的元素,這些對(duì)象可以是列表、元組、字典、集合、文件,甚至可以是自定義類(lèi)或者函數(shù),下面小編將舉例說(shuō)明,需要的朋友可以參考下
    2021-10-10
  • Python numpy和matlab的幾點(diǎn)差異介紹

    Python numpy和matlab的幾點(diǎn)差異介紹

    這篇文章主要介紹了Python numpy和matlab的幾點(diǎn)差異,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Python的streamplot使用及說(shuō)明

    Python的streamplot使用及說(shuō)明

    這篇文章主要介紹了Python的streamplot使用及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • 學(xué)習(xí)python之編寫(xiě)簡(jiǎn)單乘法口訣表實(shí)現(xiàn)代碼

    學(xué)習(xí)python之編寫(xiě)簡(jiǎn)單乘法口訣表實(shí)現(xiàn)代碼

    這篇文章主要介紹了學(xué)習(xí)python之編寫(xiě)簡(jiǎn)單乘法口訣表實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2016-02-02
  • python庫(kù)-dotenv包?及?.env配置文件詳解

    python庫(kù)-dotenv包?及?.env配置文件詳解

    python-dotenv 能將配置文件的配置信息自動(dòng)加入到環(huán)境變量。 python-dotenv解決了代碼與敏感信息的分離,這篇文章主要介紹了python庫(kù)-dotenv包?|?.env配置文件,需要的朋友可以參考下
    2022-08-08

最新評(píng)論

襄城县| 澄迈县| 盖州市| 博客| 洱源县| 舞钢市| 东明县| 沐川县| 金昌市| 岗巴县| 白河县| 洛浦县| 通海县| 江门市| 辽阳市| 元阳县| 当涂县| 定州市| 会理县| 长春市| 勐海县| 赤峰市| 沾益县| 社旗县| 塘沽区| 新郑市| 甘肃省| 上饶市| 武功县| 布尔津县| 黑河市| 聂荣县| 定襄县| 英德市| 离岛区| 泗阳县| 普格县| 恭城| 石门县| 祥云县| 阿城市|