簡體   English   中英

正確使用pathlib / os.path等

[英]Using pathlib/os.path etc correctly

我想知道如何正確使用os.path和pathlib。 我應該搜索一個目錄(我已經做過),然后輸入一個字母和空格,它將決定它將做什么。

import os從pathlib import path導入os.path import shutil

def search_files():
    directory = input()
    exist = Path(directory)
    if exist.exists():
        return directory
    else:
        print("Error")
        print("Try again: ")
        return search_files()





def search_characteristics(directory):
    interesting = input()
    exist = os.path.exists(directory)
    if interesting[0] == 'N':
        return os.path.join(directory, interesting)
    else:
        print("Error")
        return search_characteristics()



if __name__ == '__main__':
    directory = input()
    search_files()
    search_characteristics(directory)

為此,您可以看到,search_files查找可用的目錄。 下一部分是我困惑的那一部分。 基本上在搜索目錄,C:\\ Program Files之后,我會在新行中輸入N來搜索我想要的目錄。

說得像

C:\\用戶\\桌面\\東西

N something.txt

N會查找文件的確切名稱。

我正確地做了還是有其他方法可以做到這一點?

這個腳本會做你想要的。 除了使用目錄搜索功能的結果進行下一次調用之外,我還將比較更改為使用.startswith以便emtpy字符串響應不會使程序崩潰。

import os
from pathlib import *

def search_files():
    directory = input()
    exist = Path(directory)
    if exist.exists():
        return directory
    else:
        print("Error")
        print("Try again: ")
        return search_files()


def search_characteristics(directory):
    interesting = input()
    exist = os.path.exists(directory)
    if interesting.startswith('N'):
        return os.path.join(directory, interesting)
    else:
        print("Error")
        return search_characteristics(directory)

if __name__ == '__main__':
    directory = search_files()
    fn = search_characteristics(directory)
    print(fn)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM