import os
print(f'系统的名称{os.name}') #win系统的名称nt
print(f'获取当前文件的绝对路径:{os.getcwd()}')
print(f'系统环境变量:{os.environ}')
print(f'系统环境变量path对应的内容{os.environ.get("path")}')
os.mkdir(r"..\test")
try:
os.mkdir(r'..\test')
except Exception as e:
print(e)
os.makedirs(r'..\a\b')
os.rmdir(r'..\a\b')
os.rmdir(r'..\a')
name = os.listdir(r"..\test")
print(name)
os.remove(r'..\test\啦啦')
print(f'.对应的文件的绝对路径{os.path.abspath(r"..")}')
pach = r'..\test\lala'
file_ext = os.path.splitext(pach)
print(file_ext)
pach = r'..\test'
file_ext = os.path.splitext(pach)
print(file_ext)
pach = r'..\test\lala'
file_ext = os.path.basename(pach)
print(file_ext)
file_dir = os.path.dirname(pach)
print(file_dir)
file_dir = os.path.getsize(pach)
print(file_dir)
print(f'文件是否存在{os.path.exists(pach)}')
print(os.path.isabs(pach))
super_path = r'..\test'
sub_file_names = os.listdir(super_path)
print(sub_file_names)
for sub_file_name in sub_file_names:
join_path = os.path.join(sub_file_name,super_path)
print(join_path)
案例
#使用递归,获取只当目录下的直接子文件
def get_file(path):
#判断path对应的文件是否存在
if os.path.exists(path):
if os.path.isdir(path):
sub_file =os.listdir(pach)
#遍历列表
for file_name in sub_file:
#拼接文件路径
join_path =os.path.join(path,file_name)
#判断这个路径对应文件是否是txt
if os.path.isfile(join_path):
print(join_path)
elif os.path.isfile(join_path):
get_file(join_path)
else:
print('我们要操作的文件夹')
else:
print("该路径对应的文件不存在")
#获取后缀为txt文件
def get_file(path):
#判断path对应的文件是否存在
if os.path.exists(path):
if os.path.isdir(path):
sub_file =os.listdir(pach)
#遍历列表
for file_name in sub_file:
#拼接文件路径
join_path =os.path.join(path,file_name)
#判断这个路径对应文件是否是txt
if os.path.splitext(join_path)[-1] == ".txt":
print(join_path)
elif os.path.isfile(join_path):
get_file(join_path)
else:
print('我们要操作的文件夹')
else:
print("该路径对应的文件不存在")
'''
文件操作--文件是程序外的资源,想让程序与文件进行交互,需要建立程序和文件
之间的通道,当操作王弼之后,避免产生多余垃圾,需要关闭通道
'''