Hướng dẫn python pathlib file extension - phần mở rộng tệp python pathlib
Mới trong phiên bản 3.4. Show
Mã nguồn: lib/pathlib.py Lib/pathlib.py Mô -đun này cung cấp các lớp đại diện cho các đường dẫn hệ thống tập tin với ngữ nghĩa phù hợp cho các hệ điều hành khác nhau. Các lớp đường dẫn được phân chia giữa các đường dẫn thuần túy, cung cấp các hoạt động tính toán hoàn toàn mà không có I/O và các đường dẫn cụ thể, kế thừa từ các đường dẫn thuần túy nhưng cũng cung cấp các hoạt động I/O.pure paths, which provide purely computational operations without I/O, and concrete paths, which inherit from pure paths but also provide I/O operations. Nếu bạn không bao giờ sử dụng mô -đun này trước đây hoặc chỉ cần chắc chắn rằng lớp nào phù hợp với nhiệm vụ của bạn, >>> PurePath('foo', 'some/path', 'bar') PurePosixPath('foo/some/path/bar') >>> PurePath(Path('foo'), Path('bar')) PurePosixPath('foo/bar')4 rất có thể là những gì bạn cần. Nó khởi tạo một đường dẫn cụ thể cho nền tảng mà mã đang chạy.concrete path for the platform the code is running on. Đường dẫn thuần túy là hữu ích trong một số trường hợp đặc biệt; Ví dụ:
Xem thêm PEP 428: Mô-đun PathLib-Đường dẫn hệ thống tập tin hướng đối tượng.: The pathlib module – object-oriented filesystem paths. Xem thêm PEP 428: Mô-đun PathLib-Đường dẫn hệ thống tập tin hướng đối tượng. Đối với thao tác đường dẫn cấp thấp trên các chuỗi, bạn cũng có thể sử dụng mô-đun >>> PurePath('foo', 'some/path', 'bar') PurePosixPath('foo/some/path/bar') >>> PurePath(Path('foo'), Path('bar')) PurePosixPath('foo/bar') 7.Sử dụng cơ bản >>> from pathlib import Path Nhập lớp chính: >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')] Liệt kê các thư mục con: >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')] Liệt kê các tệp nguồn Python trong cây thư mục này: >>> p = Path('/etc') >>> q = p / 'init.d' / 'reboot' >>> q PosixPath('/etc/init.d/reboot') >>> q.resolve() PosixPath('/etc/rc.d/init.d/halt') Điều hướng bên trong một cây thư mục: >>> q.exists() True >>> q.is_dir() False Thuộc tính đường dẫn truy vấn: >>> with q.open() as f: f.readline() ... '#!/bin/bash\n' Mở tệp:Con đường thuần túy Các đối tượng Pure Path cung cấp các hoạt động xử lý đường dẫn mà không thực sự truy cập vào một hệ thống tập tin. Có ba cách để truy cập các lớp này, mà chúng ta cũng gọi là hương vị:pathlib.PurePath(*pathsegments)¶ClassPathLib.PurePath (*PathSegments) ¶ >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py') Một lớp chung đại diện cho hương vị đường dẫn hệ thống (khởi tạo nó tạo ra >>> PurePath('foo', 'some/path', 'bar') PurePosixPath('foo/some/path/bar') >>> PurePath(Path('foo'), Path('bar')) PurePosixPath('foo/bar')8 hoặc >>> PurePath('foo', 'some/path', 'bar') PurePosixPath('foo/some/path/bar') >>> PurePath(Path('foo'), Path('bar')) PurePosixPath('foo/bar')6): >>> PurePath('foo', 'some/path', 'bar') PurePosixPath('foo/some/path/bar') >>> PurePath(Path('foo'), Path('bar')) PurePosixPath('foo/bar') Mỗi phần tử của PathSegments có thể là một chuỗi đại diện cho một phân đoạn đường dẫn, một đối tượng thực hiện giao diện >>> PurePath() PurePosixPath('.')0 trả về một chuỗi hoặc một đối tượng đường dẫn khác: >>> PurePath() PurePosixPath('.') Khi PathSegments trống, thư mục hiện tại được giả định: >>> PurePath('/etc', '/usr', 'lib64') PurePosixPath('/usr/lib64') >>> PureWindowsPath('c:/Windows', 'd:bar') PureWindowsPath('d:bar') Khi một số đường dẫn tuyệt đối được đưa ra, con đường cuối cùng được lấy làm mỏ neo (bắt chước hành vi ____ 81 81): >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]0 Tuy nhiên, trong một đường dẫn Windows, việc thay đổi gốc cục bộ không loại bỏ cài đặt ổ đĩa trước đó: >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]1 Các dấu gạch chéo giả và các chấm đơn bị sụp đổ, nhưng các chấm đôi ( >>> PurePath() PurePosixPath('.')2) và các dấu gạch chéo đôi hàng đầu ( >>> PurePath() PurePosixPath('.')3) thì không, vì điều này sẽ thay đổi ý nghĩa của một đường dẫn vì nhiều lý do (ví dụ: liên kết tượng trưng, đường dẫn UNC): . Các đối tượng Pure Path thực hiện giao diện >>> PurePath() PurePosixPath('.')0 interface. Đã thay đổi trong phiên bản 3.6: Đã thêm hỗ trợ cho giao diện >>> PurePath() PurePosixPath('.')0.pathlib.PurePosixPath(*pathsegments)¶ classPathLib.PurePosixPath (*PathSegments) ¶ >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]2 Một lớp con của >>> PurePath() PurePosixPath('.')9, hương vị đường dẫn này đại diện cho các đường dẫn hệ thống tập tin không phải Windows: PathSegments được chỉ định tương tự như >>> PurePath() PurePosixPath('.')9. pathlib.PureWindowsPath(*pathsegments)¶ ClassPathLib.PureWWindowsPath (*PathSegments) ¶ >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]3 Một lớp con của >>> PurePath() PurePosixPath('.')9, hương vị đường dẫn này đại diện cho các đường dẫn hệ thống tập tin không phải Windows: PathSegments được chỉ định tương tự như >>> PurePath() PurePosixPath('.')9. ClassPathLib.PureWWindowsPath (*PathSegments) ¶Một lớp con của >>> PurePath() PurePosixPath('.')9, hương vị đường dẫn này đại diện cho các đường dẫn hệ thống tập tin Windows, bao gồm các đường dẫn UNC: >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]4 Bất kể hệ thống mà bạn đang chạy, bạn có thể khởi tạo tất cả các lớp này, vì chúng không cung cấp bất kỳ hoạt động nào thực hiện các cuộc gọi hệ thống. >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]5 Thuộc tính chung¶Con đường là bất biến và có thể băm. Con đường của một hương vị tương tự là tương đương và có thể đặt hàng. Những tính chất này tôn trọng ngữ nghĩa gấp lại trường hợp của hương vị: >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]6 Các con đường của một hương vị khác nhau so sánh không đồng đều và không thể đặt hàng: >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]7 Người điều khiển trong >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]8 Toán tử Slash giúp tạo đường dẫn trẻ em, tương tự như >>> PurePath() PurePosixPath('.')1: Một đối tượng đường dẫn có thể được sử dụng ở bất cứ đâu mà đối tượng triển khai >>> PurePath() PurePosixPath('.')0 được chấp nhận: Biểu diễn chuỗi của đường dẫn là đường dẫn hệ thống tập tin thô (ở dạng gốc, ví dụ: với các dấu gạch chéo ngược trong Windows), bạn có thể chuyển đến bất kỳ chức năng nào lấy đường dẫn tệp dưới dạng chuỗi: Tương tự, việc gọi >>> PurePath('/etc', '/usr', 'lib64') PurePosixPath('/usr/lib64') >>> PureWindowsPath('c:/Windows', 'd:bar') PureWindowsPath('d:bar') 5 trên đường dẫn cung cấp đường dẫn hệ thống tập tin thô dưới dạng đối tượng byte, được mã hóa bởi >>> PurePath('/etc', '/usr', 'lib64') PurePosixPath('/usr/lib64') >>> PureWindowsPath('c:/Windows', 'd:bar') PureWindowsPath('d:bar') 6:Ghi chú Gọi>>> PurePath('/etc', '/usr', 'lib64') PurePosixPath('/usr/lib64') >>> PureWindowsPath('c:/Windows', 'd:bar') PureWindowsPath('d:bar')5 chỉ được đề xuất theo Unix. Trong Windows, biểu mẫu Unicode là biểu diễn chính tắc của các đường dẫn hệ thống tập tin.parts¶ Truy cập các bộ phận riêng lẻ >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]9 Để truy cập vào các bộ phận riêng lẻ (các thành phần) của một đường dẫn, hãy sử dụng thuộc tính sau: PurePath.Parts¶Một tuple cho phép truy cập vào các thành phần khác nhau của đường dẫn: Purepath.Drive¶drive¶Một chuỗi đại diện cho ký tự hoặc tên ổ đĩa, nếu có: >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]0 Cổ phiếu của UNC cũng được coi là ổ đĩa: >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]1 Purepath.root¶root¶ Một chuỗi đại diện cho gốc (cục bộ hoặc toàn cầu), nếu có: >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]2 Cổ phiếu của UNC luôn có gốc: >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]3 Nếu đường dẫn bắt đầu với nhiều hơn hai lần cắt liên tiếp, >>> PurePath('foo', 'some/path', 'bar') PurePosixPath('foo/some/path/bar') >>> PurePath(Path('foo'), Path('bar')) PurePosixPath('foo/bar')8 sẽ sụp đổ chúng: >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]4 Ghi chú Hành vi này phù hợp với thông số kỹ thuật cơ sở nhóm mở Số 6, Đoạn 4.11 Độ phân giải tên đường dẫn: Một tên đường dẫn bắt đầu với hai dấu gạch chéo liên tiếp có thể được giải thích theo cách được xác định bằng cách thực hiện, mặc dù nhiều hơn hai dấu gạch chéo hàng đầu sẽ được coi là một dấu gạch chéo. Purepath.Anchor¶anchor¶Sự kết hợp của ổ đĩa và gốc: >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]5 Một chuỗi bất biến cung cấp quyền truy cập vào tổ tiên logic của con đường: >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]6 Đã thay đổi trong phiên bản 3.10: Trình tự cha mẹ hiện hỗ trợ các lát cắt và giá trị chỉ số âm.The parents sequence now supports slices and negative index values. Purepath.parent¶parent¶Cha mẹ logic của con đường: >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]7 Bạn không thể đi qua một mỏ neo, hoặc con đường trống: >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]8 Ghi chú Hành vi này phù hợp với thông số kỹ thuật cơ sở nhóm mở Số 6, Đoạn 4.11 Độ phân giải tên đường dẫn: >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]9 Một tên đường dẫn bắt đầu với hai dấu gạch chéo liên tiếp có thể được giải thích theo cách được xác định bằng cách thực hiện, mặc dù nhiều hơn hai dấu gạch chéo hàng đầu sẽ được coi là một dấu gạch chéo. Purepath.Anchor¶name¶Sự kết hợp của ổ đĩa và gốc: >>> p = Path('/etc') >>> q = p / 'init.d' / 'reboot' >>> q PosixPath('/etc/init.d/reboot') >>> q.resolve() PosixPath('/etc/rc.d/init.d/halt')0 Purepath.parents¶ >>> p = Path('/etc') >>> q = p / 'init.d' / 'reboot' >>> q PosixPath('/etc/init.d/reboot') >>> q.resolve() PosixPath('/etc/rc.d/init.d/halt')1 Một chuỗi bất biến cung cấp quyền truy cập vào tổ tiên logic của con đường:suffix¶ Đã thay đổi trong phiên bản 3.10: Trình tự cha mẹ hiện hỗ trợ các lát cắt và giá trị chỉ số âm. >>> p = Path('/etc') >>> q = p / 'init.d' / 'reboot' >>> q PosixPath('/etc/init.d/reboot') >>> q.resolve() PosixPath('/etc/rc.d/init.d/halt')2 Purepath.parent¶suffixes¶ Cha mẹ logic của con đường: >>> p = Path('/etc') >>> q = p / 'init.d' / 'reboot' >>> q PosixPath('/etc/init.d/reboot') >>> q.resolve() PosixPath('/etc/rc.d/init.d/halt')3 Bạn không thể đi qua một mỏ neo, hoặc con đường trống:stem¶ Đây là một hoạt động từ vựng thuần túy, do đó hành vi sau: >>> p = Path('/etc') >>> q = p / 'init.d' / 'reboot' >>> q PosixPath('/etc/init.d/reboot') >>> q.resolve() PosixPath('/etc/rc.d/init.d/halt')4 Nếu bạn muốn đi bộ một đường dẫn hệ thống tập tin tùy ý lên trên, trước tiên nên gọi >>> PurePath('/etc', '/usr', 'lib64') PurePosixPath('/usr/lib64') >>> PureWindowsPath('c:/Windows', 'd:bar') PureWindowsPath('d:bar')9 để giải quyết các liên kết symlink và loại bỏ các thành phần >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]00.as_posix()¶ PurePath.Name¶ >>> p = Path('/etc') >>> q = p / 'init.d' / 'reboot' >>> q PosixPath('/etc/init.d/reboot') >>> q.resolve() PosixPath('/etc/rc.d/init.d/halt')5 Một chuỗi đại diện cho thành phần đường dẫn cuối cùng, không bao gồm ổ đĩa và root, nếu có:as_uri()¶ Tên ổ đĩa UNC không được xem xét: >>> p = Path('/etc') >>> q = p / 'init.d' / 'reboot' >>> q PosixPath('/etc/init.d/reboot') >>> q.resolve() PosixPath('/etc/rc.d/init.d/halt')6 PurePath.Suffix¶is_absolute()¶ Phần mở rộng tệp của thành phần cuối cùng, nếu có: >>> p = Path('/etc') >>> q = p / 'init.d' / 'reboot' >>> q PosixPath('/etc/init.d/reboot') >>> q.resolve() PosixPath('/etc/rc.d/init.d/halt')7 PurePath.Suffixes¶is_relative_to(*other)¶ Một danh sách các phần mở rộng tệp đường dẫn: >>> p = Path('/etc') >>> q = p / 'init.d' / 'reboot' >>> q PosixPath('/etc/init.d/reboot') >>> q.resolve() PosixPath('/etc/rc.d/init.d/halt')8 PurePath.stem¶ Thành phần đường dẫn cuối cùng, không có hậu tố của nó:is_reserved()¶PurePath.as_posix () ¶ >>> p = Path('/etc') >>> q = p / 'init.d' / 'reboot' >>> q PosixPath('/etc/init.d/reboot') >>> q.resolve() PosixPath('/etc/rc.d/init.d/halt')9 Trả về một biểu diễn chuỗi của đường dẫn với dấu gạch chéo phía trước ( >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]01): Purepath.as_uri ()joinpath(*other)¶ Đại diện cho đường dẫn dưới dạng ____102 URI. >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]03 được nâng lên nếu đường dẫn không phải là tuyệt đối. >>> q.exists() True >>> q.is_dir() False0 Purepath.is_absolute () ¶match(pattern)¶ Trả lại cho dù đường dẫn là tuyệt đối hay không. Một đường dẫn được coi là tuyệt đối nếu nó có cả gốc và (nếu hương vị cho phép) một ổ đĩa: PurePath.is_relative_to (*Khác) ¶ >>> q.exists() True >>> q.is_dir() False1 Trả về liệu con đường này có liên quan đến đường dẫn khác hay không. >>> q.exists() True >>> q.is_dir() False2 Mới trong phiên bản 3.9. >>> q.exists() True >>> q.is_dir() False3 PurePath.is_reserved () ¶relative_to(*other)¶ Với >>> PurePath('foo', 'some/path', 'bar') PurePosixPath('foo/some/path/bar') >>> PurePath(Path('foo'), Path('bar')) PurePosixPath('foo/bar')6, trả về >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]05 nếu đường dẫn được coi là dành riêng trong Windows, >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]06 nếu không. Với >>> PurePath('foo', 'some/path', 'bar') PurePosixPath('foo/some/path/bar') >>> PurePath(Path('foo'), Path('bar')) PurePosixPath('foo/bar')8, >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]06 luôn được trả lại. >>> q.exists() True >>> q.is_dir() False4 Các cuộc gọi hệ thống tệp trên các đường dẫn dành riêng có thể thất bại một cách bí ẩn hoặc có các hiệu ứng ngoài ý muốn. Purepath.joinpath (*Khác) ¶with_name(name)¶Gọi phương thức này tương đương với việc kết hợp đường dẫn với từng đối số khác lần lượt: >>> q.exists() True >>> q.is_dir() False5 PurePath.Match (mẫu) ¶with_stem(stem)¶ Phù hợp với con đường này với mô hình kiểu Quả cầu được cung cấp. Trả về >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]05 Nếu khớp thành công, >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]06 khác. >>> q.exists() True >>> q.is_dir() False6 PurePath.stem¶ Thành phần đường dẫn cuối cùng, không có hậu tố của nó:with_suffix(suffix)¶PurePath.as_posix () ¶ >>> q.exists() True >>> q.is_dir() False7 Trả về một biểu diễn chuỗi của đường dẫn với dấu gạch chéo phía trước (>>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')] 01):Purepath.as_uri () Đại diện cho đường dẫn dưới dạng ____102 URI.>>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]03 được nâng lên nếu đường dẫn không phải là tuyệt đối. pathlib.Path(*pathsegments)¶ Purepath.is_absolute () ¶ >>> q.exists() True >>> q.is_dir() False8 Trả lại cho dù đường dẫn là tuyệt đối hay không. Một đường dẫn được coi là tuyệt đối nếu nó có cả gốc và (nếu hương vị cho phép) một ổ đĩa: PurePath.is_relative_to (*Khác) ¶ pathlib.PosixPath(*pathsegments)¶Trả về liệu con đường này có liên quan đến đường dẫn khác hay không. >>> q.exists() True >>> q.is_dir() False9 Trả lại cho dù đường dẫn là tuyệt đối hay không. Một đường dẫn được coi là tuyệt đối nếu nó có cả gốc và (nếu hương vị cho phép) một ổ đĩa: PurePath.is_relative_to (*Khác) ¶ pathlib.WindowsPath(*pathsegments)¶Một lớp con của >>> PurePath('foo', 'some/path', 'bar') PurePosixPath('foo/some/path/bar') >>> PurePath(Path('foo'), Path('bar')) PurePosixPath('foo/bar')4 và >>> PurePath('foo', 'some/path', 'bar') PurePosixPath('foo/some/path/bar') >>> PurePath(Path('foo'), Path('bar')) PurePosixPath('foo/bar')6, lớp này đại diện cho các đường dẫn hệ thống tập tin Windows cụ thể: >>> with q.open() as f: f.readline() ... '#!/bin/bash\n'0 PathSegments được chỉ định tương tự như >>> PurePath() PurePosixPath('.')9. Bạn chỉ có thể khởi tạo hương vị lớp tương ứng với hệ thống của mình (cho phép các cuộc gọi hệ thống trên các hương vị đường dẫn không tương thích có thể dẫn đến lỗi hoặc lỗi trong ứng dụng của bạn): >>> with q.open() as f: f.readline() ... '#!/bin/bash\n'1 Phương pháp bìnhCác đường dẫn bê tông cung cấp các phương pháp sau ngoài các phương thức đường dẫn thuần túy. Nhiều phương pháp trong số này có thể tăng >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]25 nếu cuộc gọi hệ thống không thành công (ví dụ như đường dẫn không tồn tại). classmethodpath.cwd () ¶Path.cwd()¶ Trả về một đối tượng đường dẫn mới đại diện cho thư mục hiện tại (được trả về bởi >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]26): >>> with q.open() as f: f.readline() ... '#!/bin/bash\n'2 classmethodpath.home () ¶ Path.home()¶ Trả về một đối tượng đường dẫn mới đại diện cho thư mục nhà của người dùng (được trả về bởi >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]27 với cấu trúc >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]28). Nếu thư mục nhà có thể được giải quyết, >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]29 sẽ được nâng lên. >>> with q.open() as f: f.readline() ... '#!/bin/bash\n'3 Mới trong phiên bản 3.5. Path.stat (*, theo dõi_symLinks = true) ¶stat(*, follow_symlinks=True)¶Trả về một đối tượng >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]30 chứa thông tin về đường dẫn này, như >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]31. Kết quả được tra cứu vào mỗi cuộc gọi đến phương thức này. Phương pháp này thường theo các liên kết symlink; Để thống kê một SymLink, hãy thêm đối số >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]32 hoặc sử dụng >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]33. >>> with q.open() as f: f.readline() ... '#!/bin/bash\n'4 Đã thay đổi trong phiên bản 3.10: Tham số tiếp theo_symlinks đã được thêm vào.The follow_symlinks parameter was added. Path.chmod (chế độ, *, theo dõi_symLinks = true) ¶chmod(mode, *, follow_symlinks=True)¶Thay đổi chế độ tệp và quyền, như >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]34. Phương pháp này thường theo Symlinks. Một số hương vị Unix hỗ trợ thay đổi quyền thay đổi trên chính Symlink; Trên các nền tảng này, bạn có thể thêm đối số >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]32 hoặc sử dụng >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]36. >>> with q.open() as f: f.readline() ... '#!/bin/bash\n'5 Đã thay đổi trong phiên bản 3.10: Tham số tiếp theo_symlinks đã được thêm vào.The follow_symlinks parameter was added. Path.chmod (chế độ, *, theo dõi_symLinks = true) ¶exists()¶Thay đổi chế độ tệp và quyền, như >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]34. >>> with q.open() as f: f.readline() ... '#!/bin/bash\n'6 Phương pháp này thường theo Symlinks. Một số hương vị Unix hỗ trợ thay đổi quyền thay đổi trên chính Symlink; Trên các nền tảng này, bạn có thể thêm đối số >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]32 hoặc sử dụng >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]36. Path.exists () ¶ Cho dù đường dẫn chỉ vào một tệp hoặc thư mục hiện có:expanduser()¶Ghi chú >>> with q.open() as f: f.readline() ... '#!/bin/bash\n'7 Mới trong phiên bản 3.5. Path.stat (*, theo dõi_symLinks = true) ¶glob(pattern)¶Trả về một đối tượng >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]30 chứa thông tin về đường dẫn này, như >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]31. Kết quả được tra cứu vào mỗi cuộc gọi đến phương thức này. >>> with q.open() as f: f.readline() ... '#!/bin/bash\n'8 Phương pháp này thường theo các liên kết symlink; Để thống kê một SymLink, hãy thêm đối số >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]32 hoặc sử dụng >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]33. >>> with q.open() as f: f.readline() ... '#!/bin/bash\n'9 Phương pháp này thường theo Symlinks. Một số hương vị Unix hỗ trợ thay đổi quyền thay đổi trên chính Symlink; Trên các nền tảng này, bạn có thể thêm đối số >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]32 hoặc sử dụng >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]36. Path.exists () ¶ Cho dù đường dẫn chỉ vào một tệp hoặc thư mục hiện có:auditing event >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]45 with arguments >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]46, >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]47. Ghi chúReturn only directories if pattern ends with a pathname components separator ( >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]48 or >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]49). Nếu đường dẫn trỏ đến một liên kết symlink, >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]37 sẽ trả về xem Symlink chỉ vào một tệp hoặc thư mục hiện có.group()¶ Path.expanduser () ¶ Trả về một đường dẫn mới với các cấu trúc>>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]28 và >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]39 mở rộng, được trả lại bởi >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]27. Nếu một thư mục nhà có thể được giải quyết, >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]29 sẽ được nâng lên.is_dir()¶ Path.glob (mẫu) ¶ GLOB Mẫu tương đối đã cho trong thư mục được biểu thị bằng đường dẫn này, mang lại tất cả các tệp phù hợp (bất kỳ loại nào): Các mẫu giống như đối với>>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]42, với việc bổ sung các ____ ____143, có nghĩa là thư mục này và tất cả các thư mục con, đệ quy. Nói cách khác, nó cho phép đệ quy:is_file()¶ Sử dụng mẫu ____ ____143 trên các cây thư mục lớn có thể tiêu thụ một khoảng thời gian không phù hợp. GLOB Mẫu tương đối đã cho trong thư mục được biểu thị bằng đường dẫn này, mang lại tất cả các tệp phù hợp (bất kỳ loại nào): Các mẫu giống như đối với>>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]42, với việc bổ sung các ____ ____143, có nghĩa là thư mục này và tất cả các thư mục con, đệ quy. Nói cách khác, nó cho phép đệ quy:is_mount()¶ Sử dụng mẫu ____ ____143 trên các cây thư mục lớn có thể tiêu thụ một khoảng thời gian không phù hợp. Tăng một sự kiện kiểm toán >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]48 hoặc >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]49).is_symlink()¶ Path.group () ¶ Trả về tên của nhóm sở hữu tập tin. >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]50 được nâng lên nếu tệp Gid được tìm thấy trong cơ sở dữ liệu hệ thống. Path.is_dir ()is_socket()¶ Trả về >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]05 Nếu đường dẫn trỏ đến một thư mục (hoặc liên kết tượng trưng chỉ vào một thư mục), >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]06 nếu nó trỏ đến một loại tệp khác. GLOB Mẫu tương đối đã cho trong thư mục được biểu thị bằng đường dẫn này, mang lại tất cả các tệp phù hợp (bất kỳ loại nào): Các mẫu giống như đối với>>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]42, với việc bổ sung các ____ ____143, có nghĩa là thư mục này và tất cả các thư mục con, đệ quy. Nói cách khác, nó cho phép đệ quy:is_fifo()¶ Sử dụng mẫu ____ ____143 trên các cây thư mục lớn có thể tiêu thụ một khoảng thời gian không phù hợp. >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]06 cũng được trả lại nếu đường dẫn không tồn tại hoặc là một liên kết symlink bị hỏng; Các lỗi khác (như lỗi cấp phép) được truyền. Path.is_block_device () ¶is_block_device()¶ Trả về >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]05 Nếu đường dẫn trỏ đến thiết bị khối (hoặc liên kết tượng trưng chỉ vào thiết bị khối), >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]06 nếu nó trỏ đến một loại tệp khác. >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]06 cũng được trả lại nếu đường dẫn không tồn tại hoặc là một liên kết symlink bị hỏng; Các lỗi khác (như lỗi cấp phép) được truyền. Path.is_char_device () ¶is_char_device()¶ Trả về >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]05 Nếu đường dẫn trỏ đến một thiết bị ký tự (hoặc liên kết tượng trưng chỉ vào một thiết bị ký tự), >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]06 nếu nó trỏ đến một loại tệp khác. >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]06 cũng được trả lại nếu đường dẫn không tồn tại hoặc là một liên kết symlink bị hỏng; Các lỗi khác (như lỗi cấp phép) được truyền. Path.iterdir () ¶iterdir()¶ Khi đường dẫn trỏ đến một thư mục, mang lại các đối tượng đường dẫn của nội dung thư mục: >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py')0 Trẻ em được mang lại theo thứ tự tùy ý, và các mục đặc biệt >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]75 và >>> PurePath() PurePosixPath('.')2 không được bao gồm. Nếu một tệp được xóa khỏi hoặc thêm vào thư mục sau khi tạo trình lặp, liệu một đối tượng đường dẫn cho tệp đó có được bao gồm không được xác định. Path.lchmod (chế độ) ¶lchmod(mode)¶ Giống như >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]77, nhưng, nếu đường dẫn chỉ vào một liên kết tượng trưng, chế độ liên kết tượng trưng được thay đổi thay vì mục tiêu của nó. Path.lstat () ¶lstat()¶ Giống như >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]78, nhưng, nếu đường dẫn chỉ vào một liên kết tượng trưng, hãy trả lại thông tin liên kết tượng trưng thay vì mục tiêu của nó. Path.mkdir (mode = 0o777, cha mẹ = falsemkdir(mode=0o777, parents=False, exist_ok=False)¶ Tạo một thư mục mới tại đường dẫn đã cho này. Nếu chế độ được đưa ra, nó được kết hợp với giá trị quy trình >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]79 để xác định chế độ tệp và cờ truy cập. Nếu đường dẫn đã tồn tại, >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]80 sẽ được nâng lên. Nếu cha mẹ là sự thật, bất kỳ cha mẹ mất tích nào của con đường này đều được tạo ra khi cần thiết; Chúng được tạo với các quyền mặc định mà không tính đến chế độ (bắt chước lệnh POSIX >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]81). Nếu cha mẹ là sai (mặc định), cha mẹ bị thiếu tăng >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]82. Nếu tồn tại_ok là sai (mặc định), >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]80 sẽ được nâng lên nếu thư mục đích đã tồn tại. Nếu tồn tại_ok là đúng, các ngoại lệ >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]80 sẽ bị bỏ qua (hành vi tương tự như lệnh POSIX >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]81), nhưng chỉ khi thành phần đường dẫn cuối cùng không phải là một tệp không trực tiếp hiện có. Đã thay đổi trong phiên bản 3.5: Tham số tồn tại_ok đã được thêm vào.The exist_ok parameter was added. Path.open (mode = 'r', buffering = -1, mã hóa = none, error = none, newLine = none) ¶open(mode='r', buffering=- 1, encoding=None, errors=None, newline=None)¶Mở tệp được trỏ bởi đường dẫn, giống như hàm >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]86 tích hợp không: >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py')1 Path.owner () ¶owner()¶ Trả về tên của người dùng sở hữu tệp. >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]50 được nâng lên nếu tệp UID được tìm thấy trong cơ sở dữ liệu hệ thống. Path.read_bytes () ¶read_bytes()¶ Trả về nội dung nhị phân của tệp pointed-to làm đối tượng byte: >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py')2 Mới trong phiên bản 3.5. Path.read_text (mã hóa = none, error = none) ¶read_text(encoding=None, errors=None)¶Trả về nội dung được giải mã của tệp pointed-to dưới dạng chuỗi: >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py')3 Các tập tin được mở và sau đó đóng. Các tham số tùy chọn có cùng ý nghĩa như trong >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]86. Mới trong phiên bản 3.5. Path.read_text (mã hóa = none, error = none) ¶readlink()¶Trả về nội dung được giải mã của tệp pointed-to dưới dạng chuỗi: >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py')4 Các tập tin được mở và sau đó đóng. Các tham số tùy chọn có cùng ý nghĩa như trong Trả về đường dẫn mà các điểm liên kết tượng trưng (được trả về bởi >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]89): >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py')5 Mới trong phiên bản 3.9. Path.rename (mục tiêu) ¶Added return value, return the new Path instance. Đổi tên tệp hoặc thư mục này thành mục tiêu đã cho và trả về một thể hiện đường dẫn mới trỏ đến mục tiêu. Trên Unix, nếu Target tồn tại và là một tệp, nó sẽ được thay thế âm thầm nếu người dùng có quyền. Trên Windows, nếu Target tồn tại,>>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]80 sẽ được nâng lên. Mục tiêu có thể là một chuỗi hoặc đối tượng đường dẫn khác:replace(target)¶ Đường dẫn mục tiêu có thể là tuyệt đối hoặc tương đối. Các đường dẫn tương đối được giải thích so với thư mục làm việc hiện tại, không phải thư mục của đối tượng đường dẫn. Mới trong phiên bản 3.9. Path.rename (mục tiêu) ¶Added return value, return the new Path instance. Đổi tên tệp hoặc thư mục này thành mục tiêu đã cho và trả về một thể hiện đường dẫn mới trỏ đến mục tiêu. Trên Unix, nếu Target tồn tại và là một tệp, nó sẽ được thay thế âm thầm nếu người dùng có quyền. Trên Windows, nếu Target tồn tại,>>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]80 sẽ được nâng lên. Mục tiêu có thể là một chuỗi hoặc đối tượng đường dẫn khác:absolute()¶ Đường dẫn mục tiêu có thể là tuyệt đối hoặc tương đối. Các đường dẫn tương đối được giải thích so với thư mục làm việc hiện tại, không phải thư mục của đối tượng đường dẫn. >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py')6 Đã thay đổi trong phiên bản 3.8: Đã thêm giá trị trả về, trả về phiên bản đường dẫn mới.resolve(strict=False)¶ Path.replace (mục tiêu) ¶ >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py')7 Đổi tên tệp hoặc thư mục này thành mục tiêu đã cho và trả về một thể hiện đường dẫn mới trỏ đến mục tiêu. Nếu mục tiêu trỏ đến một tệp hiện có hoặc thư mục trống, nó sẽ được thay thế vô điều kiện. >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py')8 Path.absolute () ¶ Mới trong phiên bản 3.6: Đối số nghiêm ngặt (hành vi trước 3,6 là nghiêm ngặt).The strict argument (pre-3.6 behavior is strict). Path.rglob (mẫu) ¶rglob(pattern)¶Điều này giống như gọi >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]96 với >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]97, được thêm vào trước mẫu tương đối đã cho: >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py')9 Tăng một sự kiện kiểm toán >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]98 với các đối số >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]46, >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]47.auditing event >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]98 with arguments >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]46, >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]47. Đã thay đổi trong phiên bản 3.11: Chỉ trả lại các thư mục nếu mẫu kết thúc bằng bộ phân cách thành phần PathName ( >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]48 or >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]49). Path.rmdir ()rmdir()¶ Xóa thư mục này. Thư mục phải trống. Path.samefile (other_path) ¶samefile(other_path)¶Trả về liệu đường dẫn này chỉ vào cùng một tệp như other_path, có thể là đối tượng đường dẫn hoặc một chuỗi. Các ngữ nghĩa tương tự như >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]03 và >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]04. Một >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]25 có thể được nêu ra nếu một trong hai tệp không thể được truy cập vì một số lý do. >>> PurePath('foo', 'some/path', 'bar') PurePosixPath('foo/some/path/bar') >>> PurePath(Path('foo'), Path('bar')) PurePosixPath('foo/bar')0 Mới trong phiên bản 3.5. Path.symlink_to (Target, Target_is_Directory = false) ¶symlink_to(target, target_is_directory=False)¶Làm cho con đường này trở thành một liên kết tượng trưng đến Target. Trong Windows, Target_is_Directory phải đúng (mặc định ____10106) nếu mục tiêu liên kết là một thư mục. Theo POSIX, giá trị Target_is_Directory, bị bỏ qua. >>> PurePath('foo', 'some/path', 'bar') PurePosixPath('foo/some/path/bar') >>> PurePath(Path('foo'), Path('bar')) PurePosixPath('foo/bar')1 Ghi chú Thứ tự của các đối số (liên kết, mục tiêu) là ngược lại ____ 207. Biến đường dẫn này thành một liên kết khó đến cùng một tệp với Target. Ghi chú Thứ tự của các đối số (liên kết, mục tiêu) là ngược lại ____ 207. Path.hardlink_to (mục tiêu) ¶ Biến đường dẫn này thành một liên kết khó đến cùng một tệp với Target.link_to(target)¶Thứ tự của các đối số (liên kết, mục tiêu) là ngược lại ____ 208. Mới trong phiên bản 3.10. Path.link_to (mục tiêu) ¶ Làm cho mục tiêu thành một liên kết khó đến đường dẫn này. Cảnh báotouch(mode=0o666, exist_ok=True)¶Hàm này không làm cho đường dẫn này trở thành một liên kết cứng đến Target, mặc dù có hàm ý của chức năng và tên đối số. Thứ tự đối số (mục tiêu, liên kết) là mặt trái của >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]09 và >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]10, nhưng phù hợp với >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]08. Mới trong phiên bản 3.8.unlink(missing_ok=False)¶ Path.touch (mode = 0O666, encape_ok = true) ¶ Tạo một tập tin tại đường dẫn đã cho này. Nếu chế độ được đưa ra, nó được kết hợp với giá trị quy trình >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]79 để xác định chế độ tệp và cờ truy cập. Nếu tệp đã tồn tại, hàm thành công nếu tồn tại_ok là đúng (và thời gian sửa đổi của nó được cập nhật lên thời gian hiện tại), nếu không >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]80 sẽ được nâng lên. Path.unlink (thiếu_ok = false) ¶ Xóa tệp này hoặc liên kết tượng trưng. Nếu đường dẫn chỉ vào một thư mục, hãy sử dụng >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]82 sẽ được nâng lên nếu đường dẫn không tồn tại.write_bytes(data)¶ Nếu thiếu_ok là đúng, các ngoại lệ >>> p = Path('.') >>> [x for x in p.iterdir() if x.is_dir()] [PosixPath('.hg'), PosixPath('docs'), PosixPath('dist'), PosixPath('__pycache__'), PosixPath('build')]82 sẽ bị bỏ qua (hành vi tương tự như lệnh POSIX >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]17). >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py')2 Đã thay đổi trong phiên bản 3.8: Tham số bị thiếu_OK đã được thêm vào. Mới trong phiên bản 3.5. Path.symlink_to (Target, Target_is_Directory = false) ¶write_text(data, encoding=None, errors=None, newline=None)¶Làm cho con đường này trở thành một liên kết tượng trưng đến Target. Trong Windows, Target_is_Directory phải đúng (mặc định ____10106) nếu mục tiêu liên kết là một thư mục. Theo POSIX, giá trị Target_is_Directory, bị bỏ qua. >>> PurePath('setup.py') # Running on a Unix machine PurePosixPath('setup.py')3 Ghi chú Mới trong phiên bản 3.5. Path.symlink_to (Target, Target_is_Directory = false) ¶The newline parameter was added. Làm cho con đường này trở thành một liên kết tượng trưng đến Target. Trong Windows, Target_is_Directory phải đúng (mặc định ____10106) nếu mục tiêu liên kết là một thư mục. Theo POSIX, giá trị Target_is_Directory, bị bỏ qua.Ghi chú
Cảnh báo 1Hàm này không làm cho đường dẫn này trở thành một liên kết cứng đến Target, mặc dù có hàm ý của chức năng và tên đối số. Thứ tự đối số (mục tiêu, liên kết) là mặt trái của >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]09 và >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]10, nhưng phù hợp với >>> list(p.glob('**/*.py')) [PosixPath('test_pathlib.py'), PosixPath('setup.py'), PosixPath('pathlib.py'), PosixPath('docs/conf.py'), PosixPath('build/lib/pathlib.py')]08.2 Mới trong phiên bản 3.8. |