#文件:通过python程序来对计算机的各种文件进行增删改查的操作
# #IO(Input/Output)
# # #操作文件的步骤 1.打开文件 2.对文件的操作 读写 3.关闭
# # #若果目标文件和当前文件在同一路径下可以直接使用文件名
# # a = 'e.txt'
# # f = open(a)#打开文件可以用open
# # #print(f)<_io.TextIOWrapper name='a.txt' mode='r' encoding='cp936'>
# # f.close()#我们要想关闭函数可以使用函数close
# #with...as....语句
# #如果已经关闭了文件可以用with....as
# # try:
# # with open(a) as f:#with as语句不用写close因为默认已经写了
# # print(f.read())
# # except FileExistsError:
# # print(f'{a}文件不存在')
# #调用open是打开一个文件 文件可以分为二种类型 一种是纯文本文件utf-8等编码
# #编写的文件 另一种是二进制文件比如图片 音乐 ppt
# #open()默认是以文本文件打开 文本里如果是中文的话需要en = utf-8
# #read函数可以把文件的内容一次性全部读取出来 但这样是有隐患的 如果文件过大 会对内存造成很大影响
# #read可以接受一个size作为参数 改参数可以用来指定读取字符的数量
#
# a = 'ab.txt'
# with open(a,encoding='utf-8') as f:
# # e = f.read(6)
# # e = f.read(6) #read里面制定的参数可以决定每一次读多少个字符
# # print(e)#如果字符的数量小于制定的size则会读取所剩余的所有内容
# # #如没有内容则会返回一个空串
# # print(len(e))
# #我们可以定义一个变量来指定每次读写的大小
# c = 100
# #创建一个循环来读取文件的内容
# while True:
# cont = f.read(c)
# if not cont:
# #没有内容跳出循环
# break
# print(cont)
# #其他的读取方式
# #文件的写入
# # file_name = 'demo1.txt'
# # with open(file_name,encoding='utf-8') as file_obj:
# # # print(file_obj.readline())#readline可以读取每一行内容
# # # print(file_obj.readline())
# # # print(file_obj.readline())
# # # #readlines可以读取封装到一个列表中返回
# # r = file_obj.readlines()
# # print(r[2])
# #
# #
# file_name = 'demo1.txt'
# with open(file_name,'a',encoding='utf-8') as file_obj:#因为open默认模式是r,并没有写文件的权限所以不写模式会报错的
# #write函数可以往文件中写内容
# file_obj.write('I am the bone of my sword.\n')
# #w表示是写 文件存在则会写入文件类容 如果文件不存在会创建文件
#
# file_obj.write('Steel is my body, and fire is my blood\n')
# file_obj.write('I have created over a thousand blades.\n')
# file_obj.write('Unknown to Death.\n')
# file_obj.write('Nor known to Life.\n')
# file_obj.write('Have withstood pain to create many weapons..\n')
# file_obj.write('Yet, those hands will never hold anything.\n')
# # file_obj.write('So as I pray, unlimited blade works.\n')
# # #除了w r a外还有x是创建文件有就报错没有就创建 r+既可读又可写
# a =r'C:\Users\Administrator\Desktop\LiSA - oath sign.mp3'
# with open(a,'rb') as f:
# #读取文本文件时size是以字符为单位 我们读取二进制文件时候size字节为单位 三个字节等于一个字符
# print(f.read(100))
# fate = 'fate.mp3'
# with open(fate,'wb') as e:
# c = 1024 * 100
# while True:
# co = f.read(c)
# #读完后的判断
# if not co:
# break
# #将读取到的数据写入新文件中
# e.write(co)
#读取文件的位置
# with open('demo1.txt','rb') as file_onj:
# file_onj.seek(6)#seek函数可以修改当前位置读取的函数(书签)
# print(file_onj.read(5))#5 +6 = 11我们从六开始读的
# print('读取到了',file_onj.tell())#tell这个函数可以检查当前读取的位置
# #seek参数:0 从头开始计算 1从当前位置计算 2是从最后位置计算
#
# with open('demo4.txt','rt',encoding='utf-8') as f:
# f.seek(6)#3个字节是一个字符 而中文是一个字符,所以10的话认不出来seek可以对中文操作 但必须和字符对应上
# print(f.read())
import os
r = os.listdir('..')#获取当前的目录结构 默认是一个.,..是返回上层目录
print(r)
r = os.getcwd()#这是获取当前所在目录
#切换当前所在的目录相当于cd
os.mkdir('abc')#创建目录
os.rmdir('abc')#删除目录