Python 操作文件
编程语言对文件系统的操作是一项必不可少的功能,各种编程语言基本上都有对文件系统的操作,最简洁的莫过于linux里面shell的操作了,其次,则是python,ruby等动态语言的操作,那么,今天散仙来看下,在python里面如何使用一些常用的操作文件功能。
主要包括:
1,创建一个文件
2,删除一个文件
3,创建一个目录
4,删除一个目录
5,拷贝,重命名,查看文件大小
6,列出某个目录下文件的数量
7,递归打印某个目录下的所有文件和目录
8,读写文件操作
9,剪切,或者拷贝整个目录或文件到另一个位置下
1,创建文件方法:
f=open("D://111.cc",mode="w",encoding="UTF-8")
f.close()
2,删除一个文件
import os
os.remove("D://222.ccc123")
os.close()
3,创建一个目录或多个目录
os.mkdir("E://bb")
os.makedirs("D:\\a\\b")
4,删除依旧用remove方法或多级删除
os.removedirs(path) os.remove()
5,拷贝,重命名,查看文件大小
import os
import shutil
#第一个参数是源文件,第二个拷贝文件
shutil.copyfile("D://111.CC","D://222.ccc")
os.rename("D://222.ccc","D://222.ccc123")
os.stat("D://abc.txt").st_size
6,查看某个目录下文件数量:
def countDirs(dp):
tt=tuple(os.walk(dp))
print("文件夹"+dp+"的信息:")
print("文件夹的个数: ",len(tt[0][1]),"文件的个数: ",len(tt[0][2]))
d1="D:\\tomcat7\\bin"
countDirs(d1)
结果如下:
文件夹D:\tomcat7\bin的信息: 文件夹的个数: 0 文件的个数: 28 Process finished with exit code 0
7,递归打印文件夹的方法:
def showAllDirs(dp):
tt=os.walk(dp);
for l in tt:
for lf in l[1]:
print("目录的路径是:",l[0]+"\\"+lf)
递归打印文件的方法:
def showAllDirsFiles(dirPath):
tt=os.walk(dirPath);
for l in tt:
for ll in l[2]:
print("文件的路径是:",l[0]+"\\"+ll)
8,读取文件的方法:
def readFile():
f=open(r"D:///bbb.txt",encoding="UTF-8")
for line in f:
#去除多余的换行符
print(line.strip())
f.close();
批量载入读取:
def readFile1():
f=open(r"D:///bbb.txt",encoding="UTF-8")
while 1:
#print("j")
lines=f.readlines(10000);
if not lines:
#print("end")
break;
for line in lines:
print(line.strip())
f.close()
写入文件例子:
def writeFile():
a=list();
a.append("a你好")
a.append("b哈喽")
a.append("c")
#a追加模式w覆盖模式
f=open("D://pp.txt",mode='a',encoding="UTF-8")
print("文件大小:",f)
for c in a:
f.write(c+"\n")
f.close()
print("写入成功!")
最后需要注意一点,注意路径的写法需要使用\\两个符号加转义实现,如果只写一个,可能会导致问题!
9,拷贝,或剪切的例子
#拷贝整个目录到另一个路径下
shutil.copytree("E:\\11111111111\\a","E:\\11111111111\\b");
#剪切整个目录到另一个路径下
shutil.move("E:\\11111111111\\a","E:\\11111111111\\cc")
以上就是python 操作文件方法的总结,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。