python之文件的复制

简介:
1
2
3
4
5
6
7
8
import  os
old_file_name  =  input ( "Please input what's file do you want to copy go:" )
fp  =  open (old_file_name)
content  =  fp.read()
index  =  old_file_name.rfind( '.' )
new_file_name  =  old_file_name[:index] + "[复件]" + old_file_name[index:]
dp  =  open (new_file_name, 'w' )
dp.write(content)

上面代码是文件的复制,我们的思路是这样的:

你可以打开一个存在的文件,然后去读取这个文件的内容,然后去创建一个新的文件,这个文件的名字是旧文件名字后面加上[复件]这样的字体。然后把我们刚刚在旧文件中读到的内容写到新文件里面去。关闭两个文件就好啦。

第二行让用户输入你想复制的文件,这个文件必须存在,而且最好是绝对路径。

第四行是打开我们要旧文件,用content变量是保存旧文件里面的内容

第五行去查找old_file_name这个变量的字符串中最右边出现的一个'.'符号的下标。

第六行是给new文件命名,然后赋予给变量new_file_name这个变量啊

那么上面有一个问题,如果说我们要复制一个你不知多大的文件的时候,千万不要用read,因为read会把所有的内容都读进内存,如果这个文件很大你的内存就崩了,也不要用readlines因为如果你的文件内容只有一行,这一行的数据很大,那你的内存也会被影响到。

可以用下面代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
import  os
old_file_name  =  input ( "Please input what's file do you want to copy go:" )
fp  =  open (old_file_name)
index  =  old_file_name.rfind( '.' )
new_file_name  =  old_file_name[:index] + "[复件]" + old_file_name[index:]
dp  =  open (new_file_name, 'w' )
while  True :
     content  =  fp.read( 1024 )
     if  len (content)  = =  0 :
         break
     dp.write(content)
fp.close()
dp.close()

上面代码的第8行是读这个文件的前1024个字符,然后再去判断读出来的内容是不是为空的,如果是的话就break退出循环,如果不是就就把内容写入新文件中


本文转自 周子琪 51CTO博客,原文链接:http://blog.51cto.com/izhouyu/1967644


相关文章
|
3天前
|
数据格式 Python
【Python】已解决:Excel无法打开文件test.xIsx“,因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。
【Python】已解决:Excel无法打开文件test.xIsx“,因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。
30 0
|
9天前
|
JSON 数据格式 Python
Flask实现内部接口----pycharm安装及新建,location代表着文件路径,下面是Python的环境,Flask是由Python开发的框架,Python文件接口ython通过GET发送
Flask实现内部接口----pycharm安装及新建,location代表着文件路径,下面是Python的环境,Flask是由Python开发的框架,Python文件接口ython通过GET发送
|
5天前
|
缓存 Shell 开发工具
[oeasy]python024_vim读取文件_从头复制到尾_撤销_重做_reg_寄存器
[oeasy]python024_vim读取文件_从头复制到尾_撤销_重做_reg_寄存器
14 5
|
2天前
|
Python
python存取yaml文件
python存取yaml文件
|
11天前
|
Linux iOS开发 MacOS
【超级简单】Python代码如何打包成exe文件
【超级简单】Python代码如何打包成exe文件
37 1
|
16天前
|
JSON 安全 数据格式
Python文件操作宝典:一步步教你玩转文件读写
Python文件操作宝典:一步步教你玩转文件读写
|
16天前
|
Python
python搭建文件服务
python搭建文件服务
13 1
|
18天前
|
安全 测试技术 Python
Python类中的Setter与Getter:跨文件调用的艺术
Python类中的Setter与Getter:跨文件调用的艺术
16 3
|
18天前
|
前端开发 API Python
如何在Python中接收前端POST上传的文件
如何在Python中接收前端POST上传的文件
34 2
|
2天前
|
Unix Linux C++
相对路径vs绝对路径 python文件的添加与删除
相对路径vs绝对路径 python文件的添加与删除