欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python os模塊中的isfile()和isdir()函數(shù)均返回false問題解決方法

 更新時間:2015年02月04日 09:43:48   投稿:junjie  
這篇文章主要介紹了Python os模塊中的isfile()和isdir()函數(shù)均返回false問題解決方法,返回false的原因是路徑使用了相對路徑,使用絕對路徑就可以解決這個問題,需要的朋友可以參考下

今天在寫一個linux下自動備份指定目錄下的所有目錄的腳本時,遇到了一個問題,由于我是需要備份目錄,所以,需要判斷掃描的文件是否為目錄,當(dāng)我用os.path.isdir()來判斷的時候,發(fā)現(xiàn)所有文件均返回false,剛開始以為是系統(tǒng)兼容性問題,進(jìn)一步測試,發(fā)現(xiàn)用os.path.isfile(),這些文件還是返回false,這肯定就是程序?qū)懙挠袉栴}了,代碼如下:

#!/usr/bin/env python
# a python script to auto backup a directory's file by Hito
import os
Directory=raw_input("Please enter directory you want to backup:")  
dirs=os.listdir(Directory)
for filename in dirs:
  if os.path.isdir(filename):
    os.system("tar czvf "+filename+".tar.gz "+filename)

經(jīng)過仔細(xì)排查,在上面的for/in循環(huán)中,filename實際上只是一個文件名。測試發(fā)現(xiàn),當(dāng)我使用os.path.isdir(目錄的絕對路徑)的時候,返回的才是true,也就是說,python的isdir()并不像php的is_dir()那樣,可以使用當(dāng)前工作目錄的相對路徑,那么這里怎么樣去改進(jìn)這個備份文件呢?幸好python提供了一個os.path.join()函數(shù),自動來把需要的路徑加到一塊,而不用擔(dān)心手動把路徑字符串連接起來時,產(chǎn)生多余的”/”的問題,那么這個備份腳本可以這樣寫:

#!/usr/bin/env python
# a python script to auto backup a directory's file by Hito
import os
Directory=raw_input("Please enter directory you want to backup:")  
dirs=os.listdir(Directory)
for filename in dirs:
  fulldirfile=os.path.join(Directory,filename)
  if os.path.isdir(fulldirfile):
    os.system("tar czvf "+fulldirfile+".tar.gz "+fulldirfile)

相關(guān)文章

  • 關(guān)于pip的安裝,更新,卸載模塊以及使用方法(詳解)

    關(guān)于pip的安裝,更新,卸載模塊以及使用方法(詳解)

    下面小編就為大家?guī)硪黄P(guān)于pip的安裝,更新,卸載模塊以及使用方法(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • python利用requests庫進(jìn)行接口測試的方法詳解

    python利用requests庫進(jìn)行接口測試的方法詳解

    在python的標(biāo)準(zhǔn)庫中,雖然提供了urllib,utllib2,httplib,但是做接口測試,requests真心好,正如官方說的,“讓HTTP服務(wù)人類”,一言以蔽之,說明一切,這篇文章主要給大家介紹了關(guān)于python利用requests庫進(jìn)行接口測試的相關(guān)資料,需要的朋友可以參考下
    2018-07-07
  • Python django框架輸入漢字,數(shù)字,字符生成二維碼實現(xiàn)詳解

    Python django框架輸入漢字,數(shù)字,字符生成二維碼實現(xiàn)詳解

    這篇文章主要介紹了Python django框架輸入漢字,數(shù)字,字符轉(zhuǎn)成二維碼實現(xiàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • python?playwright?庫上傳和下載操作(自動化測試?playwright)

    python?playwright?庫上傳和下載操作(自動化測試?playwright)

    這篇文章主要介紹了python?playwright?庫上傳和下載操作(自動化測試?playwright?),playwright中的上傳和下載比selenium的上傳和下載要簡便些,本文結(jié)合實例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • 最新評論