python獲取當前目錄和當前文件名


__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)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM