Hướng dẫn how do i find a specific folder in python? - làm cách nào để tìm một thư mục cụ thể trong python?

Giả sử ngày

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
3 là một tệp có tên tương ứng. Sau đó, bạn có thể sử dụng
C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
4:

start = "C:\\Users\\abc\\"

for dirpath, dirnames, filenames in os.walk(start):
    for filename in filenames:
        if filename == "20170412":
            filename = os.path.join(dirpath, filename)
            print(filename)
            print(dirpath)

Nếu chỉ có một tệp duy nhất tồn tại

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
5 thì ở trên sẽ xuất ra:

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\

Tất nhiên bạn có thể thay đổi câu lệnh IF để phù hợp với việc bạn muốn kiểm tra

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
6 hay bất cứ điều gì khác.

CẢNH BÁO: Nếu bạn làm

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
7 thì điều này rất có thể sẽ mất một thời gian để hoàn thành. Bởi vì nó sẽ chạy qua từng thư mục trên ổ C. If you do
C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
7 then this is most likely gonna take a looong time to finish. Because it is going to run through every single directory on the C drive.

Bạn có thể thay đổi như nhau

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
8

for dirname in dirnames:
    if dirname == "20170412":
        dirname = os.path.join(dirpath, dirname )
        print(dirname)
        print(dirpath)

Do đó, nếu

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
5 thực sự là một thư mục, thì ở trên sẽ xuất hiện giống như trước đây:

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\

Tôi đã hy vọng một cái gì đó cô đọng hơn

Bạn vẫn có thể đóng gói nó vào một danh sách hiểu nếu đó là những gì bạn gọi là ngắn gọn hơn.

files = [os.path.join(dir, f) for dir, dirs, files in os.walk(start) for f in files if f == "20170412"]

Thư mục Python

Nếu có một số lượng lớn các tệp để xử lý trong chương trình Python của chúng tôi, chúng tôi có thể sắp xếp mã của chúng tôi trong các thư mục khác nhau để làm cho mọi thứ dễ quản lý hơn.

Thư mục hoặc thư mục là một tập hợp các tệp và thư mục con. Python có mô -đun

for dirname in dirnames:
    if dirname == "20170412":
        dirname = os.path.join(dirpath, dirname )
        print(dirname)
        print(dirpath)
0 cung cấp cho chúng tôi nhiều phương pháp hữu ích để làm việc với các thư mục (và các tệp).


Nhận thư mục hiện tại

Chúng ta có thể nhận được thư mục làm việc hiện tại bằng phương pháp

for dirname in dirnames:
    if dirname == "20170412":
        dirname = os.path.join(dirpath, dirname )
        print(dirname)
        print(dirpath)
1 của mô -đun
for dirname in dirnames:
    if dirname == "20170412":
        dirname = os.path.join(dirpath, dirname )
        print(dirname)
        print(dirpath)
0.

Phương thức này trả về thư mục làm việc hiện tại dưới dạng chuỗi. Chúng ta cũng có thể sử dụng phương thức

for dirname in dirnames:
    if dirname == "20170412":
        dirname = os.path.join(dirpath, dirname )
        print(dirname)
        print(dirpath)
3 để lấy nó làm đối tượng byte.

>>> import os

>>> os.getcwd()
'C:\\Program Files\\PyScripter'

>>> os.getcwdb()
b'C:\\Program Files\\PyScripter'

Backslash thêm ngụ ý một chuỗi thoát. Hàm

for dirname in dirnames:
    if dirname == "20170412":
        dirname = os.path.join(dirpath, dirname )
        print(dirname)
        print(dirpath)
4 sẽ hiển thị điều này đúng cách.

>>> print(os.getcwd())
C:\Program Files\PyScripter

Thay đổi thư mục

Chúng ta có thể thay đổi thư mục làm việc hiện tại bằng cách sử dụng phương thức

for dirname in dirnames:
    if dirname == "20170412":
        dirname = os.path.join(dirpath, dirname )
        print(dirname)
        print(dirpath)
5.

Đường dẫn mới mà chúng tôi muốn thay đổi phải được cung cấp dưới dạng chuỗi cho phương pháp này. Chúng ta có thể sử dụng cả slash forward

for dirname in dirnames:
    if dirname == "20170412":
        dirname = os.path.join(dirpath, dirname )
        print(dirname)
        print(dirpath)
6 hoặc lùi lại
for dirname in dirnames:
    if dirname == "20170412":
        dirname = os.path.join(dirpath, dirname )
        print(dirname)
        print(dirpath)
7 để tách các yếu tố đường dẫn.

Sẽ an toàn hơn khi sử dụng một chuỗi thoát khi sử dụng chém ngược.

>>> os.chdir('C:\\Python33')

>>> print(os.getcwd())
C:\Python33

Danh sách các thư mục và tập tin

Tất cả các tệp và các thư mục phụ bên trong một thư mục có thể được truy xuất bằng phương thức

for dirname in dirnames:
    if dirname == "20170412":
        dirname = os.path.join(dirpath, dirname )
        print(dirname)
        print(dirpath)
8.

Phương thức này có một đường dẫn và trả về một danh sách các thư mục con và tệp trong đường dẫn đó. Nếu không có đường dẫn nào được chỉ định, nó sẽ trả về danh sách các thư mục con và tệp từ thư mục làm việc hiện tại.

>>> print(os.getcwd())
C:\Python33

>>> os.listdir()
['DLLs',
'Doc',
'include',
'Lib',
'libs',
'LICENSE.txt',
'NEWS.txt',
'python.exe',
'pythonw.exe',
'README.txt',
'Scripts',
'tcl',
'Tools']

>>> os.listdir('G:\\')
['$RECYCLE.BIN',
'Movies',
'Music',
'Photos',
'Series',
'System Volume Information']

Tạo một thư mục mới

Chúng ta có thể tạo một thư mục mới bằng phương pháp

for dirname in dirnames:
    if dirname == "20170412":
        dirname = os.path.join(dirpath, dirname )
        print(dirname)
        print(dirpath)
9.

Phương pháp này đi theo con đường của thư mục mới. Nếu đường dẫn đầy đủ không được chỉ định, thư mục mới được tạo trong thư mục làm việc hiện tại.

>>> os.mkdir('test')

>>> os.listdir()
['test']

Đổi tên một thư mục hoặc một tệp

Phương thức

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
0 có thể đổi tên một thư mục hoặc một tệp.

Để đổi tên bất kỳ thư mục hoặc tệp nào, phương thức

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
0 có hai đối số cơ bản: tên cũ là đối số đầu tiên và tên mới là đối số thứ hai.

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
0

Xóa thư mục hoặc tệp

Một tệp có thể được xóa (xóa) bằng phương pháp

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
2.

Tương tự, phương pháp

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
3 sẽ loại bỏ một thư mục trống.

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
1

Lưu ý: Phương pháp

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
3 chỉ có thể xóa các thư mục trống.: The
C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
3 method can only remove empty directories.

Để xóa một thư mục không trống, chúng ta có thể sử dụng phương thức

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
5 bên trong mô-đun
C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
6.

C:\Users\abc\def\ghi\20170412
C:\Users\abc\def\ghi\
2

Làm thế nào để tôi tìm thấy một thư mục cụ thể trong Python?

Để tìm ra thư mục nào trong Python bạn hiện đang ở, hãy sử dụng phương thức getCwd (). CWD dành cho thư mục làm việc hiện tại trong Python. Điều này trả về đường dẫn của thư mục Python hiện tại như một chuỗi trong Python. Để lấy nó dưới dạng đối tượng byte, chúng tôi sử dụng phương thức getCwdb ().use the getcwd() method. Cwd is for current working directory in python. This returns the path of the current python directory as a string in Python. To get it as a bytes object, we use the method getcwdb().

Làm cách nào để tìm kiếm một thư mục trong các cửa sổ Python?

Truy cập vào C C: \ Python \ và gõ Chế độ tìm kiếm Python.Nhấn Enter để chạy chương trình.Nhập tên của đường dẫn bắt đầu và nhấn vào Enter Enter.Nhập đường dẫn của tên tệp để tìm kiếm và nhấn vào Enter Enter.

Làm cách nào để định vị một tệp trong Python?

Python có thể tìm kiếm tên tệp trong một đường dẫn được chỉ định của HĐH.Điều này có thể được thực hiện bằng cách sử dụng HĐH mô -đun với các chức năng đi bộ ().Điều này sẽ lấy một đường dẫn cụ thể làm đầu vào và tạo ra 3-tuple liên quan đến dirpath, dirnames và tên tệp.using the module os with the walk() functions. This will take a specific path as input and generate a 3-tuple involving dirpath, dirnames, and filenames.

Làm cách nào để chọn một đường dẫn trong Python?

Nhấp chuột phải vào máy tính của tôi và nhấp vào các thuộc tính ..
Nhấp vào cài đặt hệ thống nâng cao ..
Nhấp vào tab biến môi trường ..
Nhấp vào tab mới của các biến người dùng ..
Viết đường dẫn trong tên biến ..
Sao chép đường dẫn của thư mục Python ..
PASTE PATH của python trong giá trị biến.Nhấp vào nút OK: Nhấp vào nút OK:.