1. 把一个目录下所有的文件删除,在所有的目录下新建一个a.txt的文件,并在文件下写入"python"关键字。

  解题思路:
        1.如果目录存在则切换进入目录
        2.遍历目录下所有的文件和目录
        3.判断如果是文件就删除,如果是目录则在目录下新建一个a.txt文件,并把"python"写入文件。

  解题方法:

#方法一:
#encoding=utf-
import os
import os.path def HandFile(): if os.path.exists("e:\\test"):
os.chdir("e:\\test")
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+"\\a.txt","w") as fp:
fp.write("python\n")
else:
print("FileNotFoundError!") HandFile() #方法二:
#encoding=utf-
import os
import os.path def HandFile():
if os.path.exists("e:\\test"):
os.chdir("e:\\test")
for i in os.listdir("e:\\test"): #os.listdir(".")
if os.path.isfile(i):
os.remove(i) #os.remove("e:\\test\\"+i)
else:
#如果是目录,则切换进入目录
os.chdir(i)
fp=open("a.txt","w",encoding="utf-8") #设置指定编码
fp.write("python\n")
fp.close()
os.chdir("..") #返回单上级目录 else:
print("FileNotFoundError!") HandFile() #方法三:
#encoding=utf-
import os
import os.path def HandFile():
try:
os.chdir("e:\\test")
for i in os.listdir("e:\\test"): #os.listdir(".")
if os.path.isfile(i):
os.remove(i) #os.remove("e:\\test\\"+i)
else:
#获取目录的绝对路径
path_name=os.path.abspath(i)
#print("path_name:",path_name)
#写文件到目录
with open(path_name+"\\a.txt","w") as fp:
fp.write("python\n")
except FileNotFoundError:
print ("File Not Found!")
except:
print ("Unknown error !") HandFile()
注意点:对于判断目录e:\\test是否存在的问题,如果目录存在则切换进入test目录,并且遍历目录。如果不存在,则直接进行处理异常。
以下是错误代码示例:
if os.path.exists("e:\\test"):                      
  os.chdir("e:\\test")   
for i in os.listdir(os.getcwd()):
  if os.path.isfile(i):
    os.remove(i)
  else:
    with open(os.path.abspath(i)+"\\a.txt","w") as fp:
      fp.write("python\n") 
如果test目录不存在,程序继续往下执行,遍历当前操作目录,本人默认当前操作目录是计算机桌面也就是desktop,这时候悲催的一幕发生了,
我的桌面所有的文件都被干掉了,且不可恢复,相当于执行了delete操作。

python 文件和目录操作题库的更多相关文章

  1. python文件及目录操作

    python文件及目录操作 读/写文件 新建/打开文件 写入 #举个例子,打开D:\test\data.txt #以写入模式打开文件 #如果test(上级目录)不存在则报错 #如果data.txt(文 ...

  2. python 文件及目录操作

    文件的基本操作 >>> import os #文件操作导入的模块 >>> import os.path >>> os.name #操作系统的类型, ...

  3. Python 文件和目录操作学习

    文件与文件路径 文件有两个关键属性:文件名和路径. 路径指明了文件在计算机上的位置. 文件名中,最后一个句点之后的部分称为文件的"扩展名",它指出了文件的类型 目录也叫文件夹,文件 ...

  4. Python文件或目录操作的常用函数

    ◆ os.listdir(path) Return a list containing the names of the entries in the directory given by path. ...

  5. Python::OS 模块 -- 文件和目录操作

    os模块的简介参看 Python::OS 模块 -- 简介 os模块的进程管理 Python::OS 模块 -- 进程管理 os模块的进程参数 Python::OS 模块 -- 进程参数 os模块中包 ...

  6. Python之文件与目录操作及压缩模块(os、shutil、zipfile、tarfile)

    Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...

  7. 【转】Python之文件与目录操作(os、zipfile、tarfile、shutil)

    [转]Python之文件与目录操作(os.zipfile.tarfile.shutil) Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读 ...

  8. Python之文件与目录操作(os、zipfile、tarfile、shutil)

    Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...

  9. Python中的文件和目录操作实现

    Python中的文件和目录操作实现 对于文件和目录的处理,虽然可以通过操作系统命令来完成,但是Python语言为了便于开发人员以编程的方式处理相关工作,提供了许多处理文件和目录的内置函数.重要的是,这 ...

随机推荐

  1. Asp.Net 中Grid详解两种方法使用LigerUI加载数据库数据填充数据分页

    1.关于LigerUI: LigerUI 是基于jQuery 的UI框架,其核心设计目标是快速开发.使用简单.功能强大.轻量级.易扩展.简单而又强大,致力于快速打造Web前端界面解决方案,可以应用于. ...

  2. Dubbo原理和源码解析之服务引用

    一.框架设计 在官方<Dubbo 开发指南>框架设计部分,给出了引用服务时序图: 另外,在官方<Dubbo 用户指南>集群容错部分,给出了服务引用的各功能组件关系图: 本文将根 ...

  3. Django运算表达式与Q对象/F对象

    Django运算表达式与Q对象/F对象 1 模型查询 概述: 1 查询集:表示从数据库中获取的对象的集合 2 查询集可以有多个过滤器,通过 逻辑运算符连接 3 过滤器就是一个函数,基于所给的参数限制查 ...

  4. NavigationView头部设置监听事件

    直接写解决方法吧: 1.将XML里的静态引入删除: <android.support.design.widget.NavigationView android:id="@+id/nav ...

  5. Python 魔术方法笔记

    魔术方法总是被__包围, 如__init__ , __len__都是常见的魔术方法,这里主要写一下我遇到的一些魔术方法 setitem 对某个索引值赋值时 即可以进行赋值操作,如 def __seti ...

  6. Linux安装任意版本的dotnet环境

    下载地址 https://www.microsoft.com/net/download/dotnet-core/2.1 安装符合服务器CPU架构的二进制包. 如果架构不对,会出现一下错误: -bash ...

  7. gin框架使用注意事项

    gin框架使用注意事项 本文就说下这段时间我在使用gin框架过程中遇到的问题和要注意的事情. 错误处理请求返回要使用c.Abort,不要只是return 当在controller中进行错误处理的时候, ...

  8. 再好好聊聊 HTTP 里的 Cookie | 实用 HTTP

    题图:by Juan Pablo Arenas 一.序 Hi,大家好,我是承香墨影! HTTP 协议在网络知识中占据了重要的地位,HTTP 协议最基础的就是请求和响应的报文,而报文又是由报文头(Hea ...

  9. String求求你别秀了

    小鲁班今年计算机专业大四了,在学校可学了不少软件开发的东西,也自学了一些JAVA的后台框架,踌躇满志,一心想着找个好单位实习.当投递了无数份简历后,终于收到了一个公司发来的面试通知,小鲁班欣喜若狂. ...

  10. 优雅地 `async/await`

    async/await 虽然取代了回调,使用类似同步的代码组织方式让代码更加简洁美观,但错误处理时需要加 try/catch. 比如下面这样,一个简单的 Node.js 中使用 async/await ...