1. 获取当前代码路径
import os
import sys
print(__file__)
print(sys.argv[0])
print(os.path.realpath(__file__))
print(os.path.abspath(sys.argv[0]))
输出
D:/ProgramWorkspace/PythonNotes/03-File-Handling/test_folder.py
D:/ProgramWorkspace/PythonNotes/03-File-Handling/test_folder.py
D:\ProgramWorkspace\PythonNotes\03-File-Handling\test_folder.py
D:\ProgramWorkspace\PythonNotes\03-File-Handling\test_folder.py
2. 获取当前文件__file__的所在目录
print(os.getcwd())
print(os.path.dirname(os.path.realpath(__file__)))
print(os.path.split(os.path.realpath(__file__))[0])
path = os.path.dirname(os.path.realpath(__file__))
输出
D:\ProgramWorkspace\PythonNotes\03-File-Handling
D:\ProgramWorkspace\PythonNotes\03-File-Handling
D:\ProgramWorkspace\PythonNotes\03-File-Handling
3. 获取当前文件名名称
print(os.path.basename(sys.argv[0])) # 当前文件名名称
print(os.path.basename(__file__))
输出
test_folder.py
test_folder.py
4. 拼接路径
path = os.path.dirname(os.path.realpath(__file__))
filename = os.path.basename(__file__)
abspath = os.path.join(path, filename)
print(abspath)
输出
D:\ProgramWorkspace\PythonNotes\03-File-Handling\test_folder.py
获取上级目录:
dirpath = os.path.dirname(os.path.realpath(__file__))
parent_path = os.path.abspath(os.path.join(dirpath, ".."))
5. 创建目录
判断目录是否存在:
os.path.exists(path)
创建目录
if not os.path.exists(path):
print(f"创建文件夹: {
path}")
os.makedirs(path)
#Python小白学习交流群:725638078
6. 获取目录下所有文件
有两种方式可以用来获取目录的文件:
- os.walk : 返回当前目录下的文件及子目录的内容
- os.listdir: 只返回当前目录中所包含的内容
import os
for root, dirs, files in os.walk(os.getcwd()):
print(root)
print(dirs)
print(files)
print("#" * 10)
print(os.listdir(os.getcwd()))