python学习笔记(22)-os文件操作模块
疑问:
如果打开操作一个文件,是用绝对路径好还是相对路径好?
os模块,在lib下面,可以直接引入的,直接使用import。
一、新建一个目录,新建一个文件夹
import os
#新建一个文件夹
os.mkdir("wuzm")
#跨级新建目录,用 / 符号代表路径的不同层级,必须确保上面的层级是存在的。
os.mkdir("wuzm/lyn") # 相对路径
os.mkdir("D:\\test_python") #决对路径 \转义字符,\t制表符。我们可以通过\或者前面加r或R使转义字符失效。
二、删除
os.rmdir("wuzm/lyn") #删除文件也是一级一级的删除,不推荐一次性删除
os.remove("wuzm/lyn") #如果wuzm下面有lyn,则不能只删除wuzm这个文件
#拓展:1、python是否可强制性删除
# 2、怎么去新建文件,open可新建,如何删除文件
三、路径的获取
路径的获取1 :获取当前工作目录,具体到最后一级目录
path = os.getcwd()
print("获取到的当前路径是:{0}".format(path))
#路径的获取2 :获取当前文件所在的绝对路径,具体到模块名
path_2= os.path.realpath(__file__) #__file__静态变量,标识模块本身
print("获取到的当前路径是:{0}".format(path_2))
'''输出:
获取到的当前路径是:E:\柠檬班第一周
获取到的当前路径是:E:\柠檬班第一周\lianxi.py'''
四、如何拼接路径
#方法一:
new_path_1 = os.getcwd()+"\pathon1" #拼接一个路径,需要加一个\
print(new_path_1)
os.mkdir(new_path_1) #新建一个这个路径
#方法二:
#new_path_2 = os.path.join(os.getcwd(),"python666\sub1")
new_path_2 = os.path.join(os.getcwd(),"python666","sub1") #这里是不定长参数,不能跨级新建,前面的路径必须存在
print(new_path_2)
os.mkdir(new_path_2)
五、判断是文件还是目录,是bool值
print(os.path.isfile(__file__)) #True
print(os.path.isfile(os.getcwd())) #False 判断是文件
print(os.path.isdir(os.getcwd())) #True 判断是路径,目录
#怎么判断文件是否存在呢?返回的也是bool值
print(os.path.exists('E:\柠檬班第一周\\add.py'))
python学习笔记(22)-os文件操作模块的更多相关文章
- python学习笔记(十)、文件操作
在前面我们了解到了没得模块,其中有一个模块为fileinput,为文件操作模块,不知道小伙伴们是否还记得? 1 打开文件 要打开文件,可以使用fileinput中的fileinput.input函数进 ...
- Python学习笔记八:文件操作(续),文件编码与解码,函数,递归,函数式编程介绍,高阶函数
文件操作(续) 获得文件句柄位置,f.tell(),从0开始,按字符数计数 f.read(5),读取5个字符 返回文件句柄到某位置,f.seek(0) 文件在编辑过程中改变编码,f.detech() ...
- Python学习笔记七:文件操作
文件操作 对照一个word文件的操作方式,来体会文件操作的内容 打开文件:f=open(“file”),提示编码错误,windows默认是GBK f=open(“file”,encoding=”utf ...
- Windows phone 8 学习笔记(2) 数据文件操作
原文:Windows phone 8 学习笔记(2) 数据文件操作 Windows phone 8 应用用于数据文件存储访问的位置仅仅限于安装文件夹.本地文件夹(独立存储空间).媒体库和SD卡四个地方 ...
- python学习笔记(二)、字符串操作
该一系列python学习笔记都是根据<Python基础教程(第3版)>内容所记录整理的 1.字符串基本操作 所有标准序列操作(索引.切片.乘法.成员资格检查.长度.最小值和最大值)都适用于 ...
- Python学习笔记之从文件中读取数据
10-1 Python 学习笔记:在文本编辑器中新建一个文件,写几句话来总结一下你至此学到的Python 知识,其中每一行都以“In Python you can”打头.将这个文件命名为learnin ...
- python学习笔记(26)-request模块
python学习笔记 #requests import requests #from class_005.http_resuest import HttpRequest login_url = &qu ...
- 吴裕雄--python学习笔记:os模块函数
os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'. os.getcwd:得 ...
- python学习笔记(12)常用模块
一.模块.包 什么是模块? 模块实质上就是一个python文件,它是用来组织代码的,意思就是说把python代码写到里面,文件名就是模块的名称,test.py test就是模块名称. 什么是包? 包, ...
- python学习笔记系列----(四)模块
这一章主要是叙述了python模块的概念以及包的概念,还有它们的使用:收获也是大大的. 提起python文件,经常会听到3个名词,python脚本,python模块,python包.脚本的概念是从py ...
随机推荐
- SeetaFaceQt:Qt多线程
为什么要做多线程,说个最简单的道理就是我们不希望在软件处理数据的时候界面处于无法响应的假死状态.有些处理是灰常花时间的,如果把这样的处理放到主线程中执行,就会导致软件一条路走到底,要等到处理完才能接收 ...
- 监听配置问题,SID与Service_Name区别
监听配置问题,SID与Service_Name区别 1.数据库实例名SID 概念:数据库实例名用于和操作系统进行联系的标识,是数据库和操作系统之间的交互用的书数据库实例名.实例名也被写入参数文件中,该 ...
- Ubuntu Hadoop使用过程中的一些技巧1
权限不足:打开有管理员权限的文件夹:sudo nautilus 输入密码即可进入最高权限的文件管理界面可以快速对文件进行修改删除操作 修改权限:chmod命令 chmod -R 777 文件 ...
- Freemarker的一点延生
1.freemarker一般不是单独使用,他可以和activeMQ互相结合,来完成功能的. 使用它有 几点好处, 首先就是提高程序效率,一般情况我们的页面都是jsp,而jsp实际上是servlet,在 ...
- vue简单逻辑判断
条件判断能否显示 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- 吴裕雄--天生自然MySQL学习笔记:MySQL GROUP BY 语句
GROUP BY 语句根据一个或多个列对结果集进行分组. 在分组的列上我们可以使用 COUNT, SUM, AVG,等函数. GROUP BY 语法 SELECT column_name, funct ...
- UML-GoF设计模式
我认为,本章是重点中的重点.并非23个模式都被广泛应用,其中常用和最为有效的大概有15个模式. 1.适配器(Adapter) 1).使用场景 使用一个已经存在的类,但如果他的接口,也就是他的方法和你的 ...
- Linux安装已编译好的FFmpeg,基于centos7
1.访问https://johnvansickle.com/ffmpeg/ 2.下载地址:https://johnvansickle.com/ffmpeg/releases/ffmpeg-releas ...
- Json返回结果为null属性不显示解决
import java.io.IOException; import org.springframework.boot.autoconfigure.condition.ConditionalOnMis ...
- Oracle与MySQL的区别对比
本文对数据库Oracle与MySQL进行了区别对比,其中从并发性.一致性.事务.数据持久性等十三方面进行了对比. 本文摘自 51cto 一.并发性 并发性是oltp数据库最重要的特性,但并发涉及到资源 ...