linux新建python文件_Python文件和目录操作示例

Python实现把一个目录下所有的文件删除,在所有的目录下新建一个linuxidc.com.txt的文件,并在文件下写入“www.linuxidc.com”关键字。

思路:

1.如果目录存在则切换进入目录

2.遍历目录下所有的文件和目录

3.判断如果是文件就删除,如果是目录则在目录下新建一个linuxidc.com.txt文件,并把"www.linuxidc.com"写入文件。

方法:

#方法一:

#encoding=utf-8

import os

import os.path

def HandFile():

if os.path.exists("/home/linuxidc/linuxidc"):

os.chdir("/home/linuxidc/linuxidc")

for i in os.listdir("/home/linuxidc/linuxidc"):  #os.listdir(".")

if os.path.isfile(i):

os.remove(i)  #os.remove("/home/linuxidc/linuxidc/"+i)

else:

#如果是目录,则切换进入目录

os.chdir(i)

fp=open("linuxidc.com.txt","w",encoding="utf-8")  #设置指定编码

fp.write("www.linuxidc.com\n")

fp.close()

os.chdir("..")  #返回单上级目录

else:

print("FileNotFoundError!")

HandFile()

#方法二:

#encoding=utf-8

import os

import os.path

def HandFile():

if os.path.exists("/home/linuxidc/linuxidc"):

os.chdir("/home/linuxidc/linuxidc")

file_list=os.listdir(os.getcwd())

for i in file_list:

#查看test目录下的所有文件和目录

#print (i)

#判断如果是文件,则删除;是目录则获取目录的绝对路径,写文件到目录下。

if os.path.isfile(i):

os.remove(i)

else:

#获取目录的绝对路径

path_name=os.path.abspath(i)

#print("path_name:",path_name)

#写文件到目录

with open(path_name+"\\linuxidc.com.txt","w") as fp:

fp.write("www.linuxidc.com\n")

else:

print("FileNotFoundError!")

HandFile()

#方法三:

#encoding=utf-8

import os

import os.path

def HandFile():

try:

os.chdir("/home/linuxidc/linuxidc")

for i in os.listdir("/home/linuxidc/linuxidc"):  #os.listdir(".")

if os.path.isfile(i):

os.remove(i)  #os.remove("/home/linuxidc/linuxidc"+i)

else:

#获取目录的绝对路径

path_name=os.path.abspath(i)

#print("path_name:",path_name)

#写文件到目录

with open(path_name+"\\linuxidc.com.txt","w") as fp:

fp.write("www.linuxidc.com\n")

except FileNotFoundError:

print ("File Not Found!")

except:

print ("Unknown error !")

HandFile()

注意点:对于判断目录/home/linuxidc/linuxidc是否存在的问题,如果目录存在则切换进入/home/linuxidc/linuxidc目录,并且遍历目录。如果不存在,则直接进行处理异常。

如果/home/linuxidc/linuxidc目录不存在,程序继续往下执行,遍历当前操作目录,如果默认当前操作目录是计算机桌面也就是desktop,那么就悲催了,桌面所有的文件都被彻底删除掉了,且不可恢复,相当于执行了delete操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值