Python3.5对文件的操作

简介:
+关注继续查看

这是一个python3.5对文件操作的整理,里面有复制/改名/覆盖输入/追加输入等等。


前提:在E盘的PythonAAA/A的文件夹下,有一个123.txt

1)覆盖输入

1
2
3
4
5
>>>import os    #启动模块
>>>f=open("e:/PythonAAA/A/123.txt","w+")    #打开目标文件,w+是以读写方式打开,同r+
>>>f.write("我爱北京天安门")    #写入内容就是歌词
7
>>>f.close()    #关闭文件,这一步至关重要!有开有关。

【补充】如果在改路径下没有123.txt这个文件,那么这样就会直接生成123.txt这个文件。

这种f=open的方式在打开文件之后一定要close(),不然这个文件一直会在后台运行,windows下使用ctrl+alt+del下是可以看到这个进程的,如果总觉得自己会忘记close(),可以使用with as方法,上面的句子可以这么写:

1
2
>>>with open("e:/PythonAAA/A/123.txt") as f:
f.write("我爱北京天安门")


2)追加输入

如果是with as方法打开文件的话, 那么write默认都是追加输入,比如

1
2
>>> with open("e:/PythonAAA/A/123.txt","a") as f:
    f.write("\n 伟大领袖毛主席 \t 带领我们向前进")  #\n和\s效果自己看

效果如下:

wKiom1corYHztJdSAAAhusfCu0w616.png

如果要用f=的方法,那么第一行要f=open("e:/PythonAAA/A/123.txt","a") ,这里a就是add的意思。


3)文件改名

如果想要把这个 123.txt改成456.txt,很简单,一句话就能做到。

1
2
>>> import os
>>> os.rename("e:/PythonAAA/A/123.txt","e:/PythonAAA/A/456.txt")

这个效果立竿见影。


4)文件复制

想要把e:/PythonAAA/A/123.txt复制到e:/PythonAAA/B这个文件夹里,同样叫123.txt。

1
2
>>> import shutil
>>> shutil.copy("e:/PythonAAA/B/123.txt","e:/PythonAAA/A/123.txt")

【补充】这个语句的前提是必须要有B这个文件夹,不然的话,会报错。


5)目录删除

e:/PythonAAA/B/C这个文件夹不想要了,删除之。

1
2
>>> import shutil
>>> shutil.rmtree("e:/PythonAAA/B/C")


6)文件删除

e:/PythonAAA/B/456.txt这个文件不想要了,删除之。

1
2
>>> import os
>>>  os.unlink("e:/PythonAAA/B/456.txt")

os.remove效果也一样,语句也一样。


7)文件剪切粘贴

e:/PythonAAA/B/123.txt剪贴粘贴到e:/PythonAAA/A/123.txt。

1
2
>>> import shutil
>>> shutil.move("e:/PythonAAA/B/123.txt","e:/PythonAAA/A/123.txt")


8)综合练习

要求把e:/PythonAAA/A里所有.py文件都复制到e:/ABC/CBA这个文件夹里。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
>>> import os
>>> os.makedirs("e:/ABC/CBA")    #建立/ABC/CBA这个文件夹,如果是一层文件夹os.mkdir就行
>>> def copyFiles(sourceDir,targetDir):
    for files in os.listdir(sourceDir):
        sourceFile = os.path.join(sourceDir,files)
        targetFile = os.path.join(targetDir,files)
        try:
            if os.path.isfile(sourceFile) and sourceFile.find('.py')>0:
            #可以试试不加>0的后果
                shutil.move(sourceFile,targetFile)
        except FileNotFoundError:
            print("此文件夹不存在,请重新检查!")
             
>>> copyFiles("e:/PythonAAA/B","e:/ABC/CBA")

要么无错误输出,要么就会有多少个.py文件就会返回多少次“此文件夹不存在,请重新检查!”



 本文转自 苏幕遮618 51CTO博客,原文链接:http://blog.51cto.com/chenx1242/1769866


相关文章
|
12天前
|
Python
python 打印某个文件夹下的所有文件 三行代码
python 打印某个文件夹下的所有文件 三行代码
10 0
|
12天前
|
Python
如何快速打开python文件 GUI
如何快速打开python文件 GUI
12 0
|
12天前
|
Python
解决 sublime text3 运行python文件无法input的问题
解决 sublime text3 运行python文件无法input的问题
7 0
|
14天前
|
前端开发 JavaScript Python
使用Python读取本地行情csv文件,做出web网页画出K线图实现案例
使用Python读取本地行情csv文件,做出web网页画出K线图实现案例
|
20天前
|
Python
【python读取nc文件】报错:ValueError: unrecognized engine netcdf4 must be one of: [‘store‘]
【python读取nc文件】报错:ValueError: unrecognized engine netcdf4 must be one of: [‘store‘]
39 0
|
25天前
|
Java Linux Python
java调python文件(使用conda的环境)
java调python文件(使用conda的环境)
|
25天前
|
Python
python将数据写入本地txt文件
python将数据写入本地txt文件
|
26天前
|
数据挖掘 Python
【Python】数据分析:结构化数分工具 Pandas | Series 与 DataFrame | 读取CSV文件数据
【Python】数据分析:结构化数分工具 Pandas | Series 与 DataFrame | 读取CSV文件数据
23 1
|
27天前
|
Python
Python pip : 无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
Python pip : 无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
|
1月前
|
Python
40 python - 文件重命名、删除
40 python - 文件重命名、删除
10 0
相关产品
云迁移中心
推荐文章
更多