疑问:

如果打开操作一个文件,是用绝对路径好还是相对路径好?

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文件操作模块的更多相关文章

  1. python学习笔记(十)、文件操作

    在前面我们了解到了没得模块,其中有一个模块为fileinput,为文件操作模块,不知道小伙伴们是否还记得? 1 打开文件 要打开文件,可以使用fileinput中的fileinput.input函数进 ...

  2. Python学习笔记八:文件操作(续),文件编码与解码,函数,递归,函数式编程介绍,高阶函数

    文件操作(续) 获得文件句柄位置,f.tell(),从0开始,按字符数计数 f.read(5),读取5个字符 返回文件句柄到某位置,f.seek(0) 文件在编辑过程中改变编码,f.detech() ...

  3. Python学习笔记七:文件操作

    文件操作 对照一个word文件的操作方式,来体会文件操作的内容 打开文件:f=open(“file”),提示编码错误,windows默认是GBK f=open(“file”,encoding=”utf ...

  4. Windows phone 8 学习笔记(2) 数据文件操作

    原文:Windows phone 8 学习笔记(2) 数据文件操作 Windows phone 8 应用用于数据文件存储访问的位置仅仅限于安装文件夹.本地文件夹(独立存储空间).媒体库和SD卡四个地方 ...

  5. python学习笔记(二)、字符串操作

    该一系列python学习笔记都是根据<Python基础教程(第3版)>内容所记录整理的 1.字符串基本操作 所有标准序列操作(索引.切片.乘法.成员资格检查.长度.最小值和最大值)都适用于 ...

  6. Python学习笔记之从文件中读取数据

    10-1 Python 学习笔记:在文本编辑器中新建一个文件,写几句话来总结一下你至此学到的Python 知识,其中每一行都以“In Python you can”打头.将这个文件命名为learnin ...

  7. python学习笔记(26)-request模块

    python学习笔记 #requests import requests #from class_005.http_resuest import HttpRequest login_url = &qu ...

  8. 吴裕雄--python学习笔记:os模块函数

    os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'. os.getcwd:得 ...

  9. python学习笔记(12)常用模块

    一.模块.包 什么是模块? 模块实质上就是一个python文件,它是用来组织代码的,意思就是说把python代码写到里面,文件名就是模块的名称,test.py test就是模块名称. 什么是包? 包, ...

  10. python学习笔记系列----(四)模块

    这一章主要是叙述了python模块的概念以及包的概念,还有它们的使用:收获也是大大的. 提起python文件,经常会听到3个名词,python脚本,python模块,python包.脚本的概念是从py ...

随机推荐

  1. 小白需要了解的Ajax和websocket的区别以及使用场景!

    在我们日常使用的互联网产品中,很多都是前后端数据的交互来完成的,说到数据交互就不得不提Ajax和websocket,它们可是数据交互的利器,那么它们分别是什么?websocket与Ajax轮询的区别又 ...

  2. LeetCode——139. 单词拆分

    给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词. 说明: 拆分时可以重复使用字典中的单词. 你可以假设字典中没有重复 ...

  3. vue样式的动态绑定

    true显示样式,flase不显示 <!DOCTYPE html> <html lang="en"> <head> <meta chars ...

  4. 跟踪LinkedList源码,通过分析双向链表实现原理,自定义一个双向链表

    1.LinkedList实现的基本原理 LinkedList是一个双向链表,它主要有两个表示头尾节点的成员变量first  .last,因其有头尾两个节点,所以从头或从尾操作数据都非常容易快捷.Lin ...

  5. Thread--synchronized&volatile

  6. CSS中的 position与Grid Layout

    [1]CSS之Position(定位布局): 现css常用的属性有5种: 1.static 2.absolute 3.fixed 4.relative 5.sticky. 1.static 表示元素的 ...

  7. day61-mysql-索引原理和慢查询优化

    ProgramData是C盘隐藏的文件夹,mysql的data文件夹在里面,C:\ProgramData\MySQL\MySQL Server 8.0\Data 一.存储引擎 重点[面试题]: inn ...

  8. Eclipse打包Jar单独使用

    今天做了一个刷***的功能,代码很简单,只有几十行代码,我开始是在eclipse里面跑的,后面觉得在里面跑不舒服,我就想把他单独作为一个jar文件单独运行,里面使用了第三方jar包,下面记录一下步骤. ...

  9. views层回顾

    目录 views层回顾 jsonResponse 2 大文件上传 3. cbv和fbv源码分析 4settings.py源码分析 5模板传值{{}} {%%} 6. 过滤器和标签和自定义 7模板的继承 ...

  10. 反射(hasattr和setattr和delattr)

    反射(hasattr和setattr和delattr) 一.反射在类中的使用 反射就是通过字符串来操作类或者对象的属性, 反射本质就是在使用内置函数,其中反射有以下四个内置函数: hasattr:通过 ...