os与操作系统交互的模块

常用模块之

OS与操作系统交互的模块

常用方法

import os
FILE_PATH = os.path.dirname(__file__)
print(FILE_PATH) #获取当前文件的上一级目录
print(os.path.dirname(FILE_PATH)) #获取当前文件的根目录
print(os.path.dirname('E:python正式项目day15 常用模块	ime.py'))
#结果为
E:/python正式项目/day15 常用模块
E:/python正式项目
E:python正式项目

#路径的拼接:拼接文件跟'绝对路径’
TEST_PATH1 = os.path.join(FILE_PATH, '胡晨阳的写真集.txt')
print(TEST_PATH1)
#结果为
E:/python正式项目/day15 常用模块胡晨阳的写真集.txt

#判断“文件/文件夹”是否存在:若文件存在返回
print(os.path.exists(TEST_PATH1))
print(os.path.exists(FILE_PATH))
#结果为
True
True

# 判断“文件夹”是否存在
# print(os.path.isdir(TEST_PATH1))
# print(os.patir.isdir(FILE_PATH))
#结果为
False
True

#创建文件夹
NEW_PATH = os.path.join(FILE_PATH, '卢澄庆的写真集.txt')
os.mkdir(NEW_PATH)

#删除文件夹(只能删除空文件夹)
os.rmdir(NEW_PATH)

#获取某个文件夹中所有文件的名字(需跟绝对路径)
boy_list = os.listdir(r'E:python正式项目day15 常用模块oy写真')
print(boy_list)
#结果为
['卢澄庆写真集.txt', '胡晨阳的写真集.txt', '郭兴隆写真集.txt']

# enumerate(可迭代对象) ---> 得到一个对象,对象有一个个的元组(索引, 元素)
res = enumerate(boy_list)
print(res)
print(list(res))
#结果为
<enumerate object at 0x00000239645339A8>
[(0, '卢澄庆写真集.txt'), (1, '胡晨阳的写真集.txt'), (2, '郭兴隆写真集.txt')]
#练习,让用户选择文件
while True:
    for number, name in enumerate(boy_list):
        print(f'编号:{number} 文件名:{name}')
    choice = input(
        '请选择想看的boy作品-->(今日头条:胡晨阳写真)编号:').strip()
    if not choice.isdigit():
        print('必须输入数字')
        continue
    choice = int(choice)
    if choice not in range(len(boy_list)):
        print('编码范围错误!')
        continue
    file_name = boy_list[choice]
    boy_path = os.path.join(
        r'E:python正式项目day15 常用模块oy写真', file_name)
    print(boy_path)
    with open(boy_path, 'r', encoding='utf-8')as f:
        print(f.read())
原文地址:https://www.cnblogs.com/a736659557/p/11894050.html