__author__ = 'Administrator'
# _*_ coding: UTF-8 _*_
# @Create by gengyu
# @Create Time :2021/12/4
# @File_name : exists
# wn.run/https://
import os,sys,pathlib
import glob
import shutil
'''
this is __doc__
'''
def test1():
# 获取当前目录
# base_path = pathlib.Path.cwd()
base_path = os.getcwd()
# 获取当前文件绝对目录(path+file_name)
# <class 'list'>
path = sys.argv
# <class 'str'>
path1 = sys.argv[0]
path2 = __file__
path3 = pathlib.Path(__file__)
# 获取当前文件名称
name = os.path.basename(__file__)
name1 = os.path.basename(path1)
print(name)
# 获取指定路径下所有文件名称,保存到一个列表中。不填参数默认获取当前目录下所有文件名称
path_list = os.listdir()
print(path_list)
# 检测文件是否存在
res = os.path.isfile(r'C:\Users\Administrator\PycharmProjects\python_switch\myexcel.xlsx')
print(res)
# 判断是文件还是目录
p = pathlib.Path(r'C:\Users\Administrator\PycharmProjects\python_switch\myexcel.xlsx')
if p.is_dir():
print('目录存在')
if p.is_file():
print('指定文件存在')
if p.exists():
print('指定文件或目录存在')
print('44')
file_name = r'C:\Users\Administrator\PycharmProjects\python_switch\myexcel.xlsx'
try:
pathlib.Path("/path/to/file").resolve()
# with open(r'%s' % file_name,'r',encoding='utf-8'):
# pass
except FileNotFoundError:
print('文件不存在')
else:
print('文件存在')
def test2():
# 获取当前文件所在目录下所有的txt文件。返回一个列表,不遍历子文件夹下文件
res = glob.glob('*.txt')
print(res)
# 把所有的 txt 文本全部移动到 archive 目录当中
for file_name in glob.glob('*.txt'):
new_path = os.path.join(r'd:/python/', file_name)
shutil.move(file_name, new_path)
# 使用pathlib新的写法,不支持不同磁盘移动文件
for file_name in glob.glob('*.xlsx'):
pathlib.Path(file_name).replace(r'c:/%s' % file_name)
# 获取文件的绝对路径
file = pathlib.Path('python_switch.py')
print(file.resolve())
# 获取文件的上一级目录
file1 = pathlib.Path(r'C:\Users\Administrator\PycharmProjects\python_switch\python_switch.py')
print(file1.parent)
print(file1.parents[0])
# exist_ok=True 表示当文件存在时,不进行任何操作,如果不存在则创建文件
# exist_ok=False 表示当文件存在时,会报FileExistsError,文件已存在
file = pathlib.Path('test.txt')
file.touch(exist_ok=True)
# 删除目录,包括子文件夹
# shutil.rmtree('huawei', ignore_errors=True)
# 删除目录,当目录不为空时,无法删除
# os.removedirs('huawei')
# # 删除目录,当目录不为空时,无法删除,会报OSError
# if pathlib.Path('huawei').exists():
# os.rmdir('huawei')
# # 创建目录,os.mkdir() 只能创建一级目录,当文件已存在时,无法创建该文件
# if not pathlib.Path('huawei').exists():
# os.mkdir('huawei')
# # os.makedirs() 可以创建多级目录,exist_ok=True 表示当目录存在时,不进行任何操作,如果不存在则创建目录
# os.makedirs('huawei/hisi/baidu',exist_ok=True)
标签:name,python,pathlib,file,path,print,操作,os,目录
From: https://www.cnblogs.com/HeroZhang/p/17838790.html