'''
实现文本文件的复制####################################################
'''
# 分别以读,写方式 打开两个文件,一个是源文件,一个目标生成文件
file_r =open('data','r')#打开文件,正对不同的文件需要指定路径和文件名,因为现在此文件就是当前目录C:\\Users\\12446\\Desktop\\a\a.png
file_w =open('data_bak','w')#读取文件
file_w.readlines()#读取文件按行去读取
# 实现拷贝 操作
# 从源文件里读取文件,读一次,向目标文件当中写入一次
while True:
content = file_r.read(10)#将读取文件复制给一个变量
# 判断是否读取到了内容
if content !='':
# 读取到内容 ,将内容 写入
file_w.write(content)
else:
print('拷贝 成功')
break
# 关闭文件
file_r.close()
file_w.close()
#######################################################################################
#批量拷贝文件夹中的文件####################################################################
import os
# C:\Users\12446\Desktop
# print(os.getcwd())
# 切换路径,将路径切换到桌面a文件
os.chdir('C:\\Users\\12446\\Desktop\\a')#其中有个\是未了转义
# 获取当前路径
# print(os.getcwd())
# 创建文件夹(目录文件,在桌面上创建aaaa文件)
os.mkdir('C:\\Users\\12446\\Desktop\\aaaa')#此时会在左面上创建一个aaaa文件夹
# 获取要拷贝文件夹中的所有文件名称(因为当前程序执行的路径就是C:\\Users\\12446\\Desktop\\aaaa
# 可以用省略的方式直接写.代替)
files = os.listdir('C:\\Users\\12446\\Desktop\\aaaa')
# print(files)
#循环遍历获取文件目录中的所有文件名
for iin files:
# 获取拷贝路径,已经修改宝贝文件名称为原名+_bak.png
copy_lj='C:\\Users\\12446\\Desktop\\aaaa\\'+i.replace('.png','_bak.png')
# print(copy_lj)
# 打开文件此时i就是对应的文件名,正常写法发应该是C:\\Users\\12446\\Desktop\\aaaa\i
# 才对,因为前面已经将程序执行切换到了此路劲所以直接用i就可以了
dakia =open(i,'rb')
#写入文件
xieru =open(copy_lj,'wb')
while True:
dakai_siz=dakia.read(1024 *1024)
if dakai_siz !=b'':#b‘’判断文件是否读取完,不同的操作形同可以用b去掉尝试调试
#写入文件
xieru.write(dakai_siz)
else:
print(dakai_siz)
print(f'{i} 拷贝完成')
break
dakia.close()
xieru.close()
#######################################################################################