Python 拷贝功能

w模式我们说是用来创建新文件的,那它的应用场景在哪呢?

其实你疆场都在用这个模式,只是你自己不知道而已。

就是我们常用的ctrl+c、ctrl+v。

我把一个文件复制一下,然后到另一个路径粘贴进去。这个拷贝的过程你仔细思考一下,是怎么实现的。

其实拷贝功能很简单,就是把原来文件的内容读出来,然后写到一个新文件里去。

不管你是拷贝文本文件,还是视频或者图片,本质都是一样的。

现在我们只学了文本文件,我们就以拷贝文本文件为例。

假设我有一个需求,我要把这个date文件夹下的user.txt拷贝一份,拷贝到外面学习文件那层去。并且名字我改成user(副本).txt。

首先要读取原文件内容对吧。

with open(fr'G:\PythonProject\学习\学习文件\date\user.txt', mode='rt', encoding='utf-8') as f1, \
    open('user副本.txt', mode='wt', encoding='utf-8') as f2:

现在我们要把f1的内容读取出来。

with open(fr'G:\PythonProject\学习\学习文件\date\user.txt', mode='rt', encoding='utf-8') as f1, \
    open('user副本.txt', mode='wt', encoding='utf-8') as f2:
    res = f1.read()
    f2.write(res)

现在来运行一下。

学习文件里面就多了一个user副本.txt的文件。

如果我们要把这个程序做成一个拷贝工具,就不能把路径写死了,得让用户自己输入文件路径。

让用户输入还是input功能。

old_path = input('请输入原文件路径').strip()
new_path = input('请输入新文件路径').strip()
with open(fr'{old_path}', mode='rt', encoding='utf-8') as f1, \
    open(fr'{new_path}', mode='wt', encoding='utf-8') as f2:
    res = f1.read()
    f2.write(res)

然后我们来运行看下。

这样学习文件文件夹下的user_date(副本).txt文件也拷贝过来了。

当然这个程序现在只能针对文本文件,等我们后面学了b模式之后你就可以实现图片和视频的拷贝功能了。

未经允许不得转载:445IT之家 » Python 拷贝功能

赞 (0) 打赏

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏