下面是关于Python实现获取当前目录下文件名代码的详细攻略,包括具体的代码和解释。
获取当前目录下所有文件名
步骤一:导入os模块
在Python中,要实现获取当前目录下的所有文件名,首先需要导入os模块。os模块是Python中的一个操作系统接口模块,提供了一些与操作系统交互的函数和变量。可以使用以下代码导入os模块:
import os
步骤二:获取当前目录路径
获取当前目录路径有两种方式:
方式一:使用os.getcwd()函数
os.getcwd()
函数用于获取当前工作目录(即Python脚本工作的目录),返回值为一个字符串。可以使用以下代码获取当前目录路径:
current_dir = os.getcwd()
方式二:使用.(点)
表示当前目录
在Python中,.
表示当前目录,所以可以直接用以下代码获取当前目录路径:
current_dir = '.'
步骤三:使用os.listdir()函数获取当前目录所有文件名
os.listdir(path='.')
函数用于获取指定目录下所有文件名,返回一个包含文件名的列表。当不指定path参数时,默认获取当前目录下所有文件名。可以使用以下代码获取当前目录下所有文件名:
file_names = os.listdir(current_dir)
步骤四:去除子目录
在获取当前目录下所有文件名的过程中,可能会包含子目录的文件名。如果只需要当前目录下的文件名,需要将其中的子目录文件名去除。可以使用以下代码将子目录文件名去除:
file_names = [name for name in file_names if os.path.isfile(os.path.join(current_dir, name))]
最后,打印获取到的所有文件名:
print(file_names)
完整代码如下:
import os
current_dir = os.getcwd()
file_names = os.listdir(current_dir)
file_names = [name for name in file_names if os.path.isfile(os.path.join(current_dir, name))]
print(file_names)
示例说明一
如果当前目录下有以下文件和文件夹:
- main.py
- test.py
- folder1/
- file1.txt
- folder2/
- file2.txt
- file3.txt
则运行以上代码,输出结果为:
['main.py', 'test.py']
示例说明二
如果当前目录下有以下文件和文件夹:
- main.py
- test.py
- folder/
- empty_folder/
则运行以上代码,输出结果为:
['main.py', 'test.py']
获取当前目录下指定后缀名的文件名
如果想获取当前目录下指定后缀名的文件名,可以使用以下代码:
import os
current_dir = os.getcwd()
suffix = '.txt'
file_names = [name for name in os.listdir(current_dir) if name.endswith(suffix) and os.path.isfile(os.path.join(current_dir, name))]
print(file_names)
解释一下这段代码:
suffix = '.txt'
:指定后缀名为.txt
if name.endswith(suffix) and os.path.isfile(os.path.join(current_dir, name))
:判断文件名是否以指定后缀名结尾,并且是一个文件而不是文件夹
示例说明三
如果当前目录下有以下文件和文件夹:
- main.py
- test.py
- file1.txt
- file2.txt
- file3.pdf
- folder/
- empty_folder/
则运行以上代码,输出结果为:
['file1.txt', 'file2.txt']
以上就是关于Python实现获取当前目录下文件名代码的详细攻略和两个示例说明。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python实现获取当前目录下文件名代码详解 - Python技术站