📜  Python| os.DirEntry.path 属性

📅  最后修改于: 2022-05-13 01:55:08.413000             🧑  作者: Mango

Python| os.DirEntry.path 属性

Python中的OS 模块提供了与操作系统交互的功能。操作系统属于 Python 的标准实用程序模块。该模块提供了一种使用操作系统相关功能的可移植方式。

os 模块os.scandir()方法产生os.DirEntry对象,对应于指定路径给定的目录中的条目。 os.DirEntry对象具有各种属性和方法,用于暴露目录条目的文件路径和其他文件属性。

os.DirEntry对象的path属性用于获取条目的完整路径名。仅当os.scandir()方法中使用的路径参数是绝对路径时,完整路径才是绝对路径。此外,如果os.scandir()方法路径参数是文件描述符,则os.DirEntry.name属性的值与os.DirEntry.path属性相同。

注意: os.DirEntry对象旨在在迭代后使用和丢弃,因为对象的属性和方法会缓存它们的值并且永远不会再次重新获取值。如果文件的元数据已更改,或者自调用os.scandir()方法以来已经过去了很长时间。我们不会获得最新信息。

代码 #1:使用os.DirEntry.path属性

# Python program to explain os.DirEntry.path attribute 
  
# importing os module  
import os
  
# Directory to be scanned
# Current working directory
path = os.getcwd()
  
# Using os.scandir() method
# scan the specified directory
# and yield os.DirEntry object
# for each file and sub-directory
  
print("Full path of all directory entry in '% s':" % path) 
with os.scandir(path) as itr:
    for entry in itr :
        # Exclude the entry name
        # starting with '.'  
        if not entry.name.startswith('.') :
            # print entry's name
            # and its full path 
            print(entry.name, ":", entry.path)
输出:
Full path of all directory entry in '/home/ihritik':
Public : /home/ihritik/Public
Desktop : /home/ihritik/Deskop
R : /home/ihritik/R
foo.txt : /home/ihritik/foo.txt
graph.cpp : /home/ihritik/graph.cpp
tree.cpp : /home/ihritik/tree.cpp
Pictures : /home/ihritik/Pictures
abc.py : /home/ihritik/abc.py
file.txt : /home/ihritik/file.txt
Videos : /home/ihritik/Videos
images : /home/ihritik/images
Downloads : /home/ihritik/Downloads
GeeksforGeeks : /home/ihritik/GeeksforGeeks
Music : /home/ihritik/Music
Documents : /home/ihritik/Documents

参考资料: https://docs。 Python.org/3/library/os.html#os.DirEntry.path