Python-os 文件流的一系列操作手册

import os

os.getcwd()  # 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname")  # 改变当前脚本工作目录;相当于shell下cd
os.curdir()  # 返回当前目录: ('.')
os.pardir()  # 获取当前目录的父目录字符串名:('..')
os.makedirs('dir1/dir2')  # 可生成多层递归目录
os.removedirs('dirname1')  # 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir('dirname')  # 生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname')  # 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname')  # 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove("file_name")  # 删除一个文件
os.rename("oldname", "new")  # 重命名文件/目录
os.stat('path/filename')  # 获取文件/目录信息
os.sep()  # 操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
os.linesep()  # 当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
os.pathsep()  # 用于分割文件路径的字符串
os.name()  # 字符串指示当前使用平台。win->'nt'; Linux->'posix'
os.system("bash command")  # 运行shell命令,直接显示
os.environ()  # 获取系统环境变量
os.path.abspath(path)  # 返回path规范化的绝对路径
os.path.split(path)  # 将path分割成目录和文件名二元组返回
os.path.dirname(path)  # 返回path的目录。其实就是os.path.split(path)的第一个元素
os.path.basename(path)  # 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
os.path.exists(path)  # 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path)  # 如果path是绝对路径,返回True
os.path.isfile(path)  # 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path)  # 如果path是一个存在的目录,则返回True。否则返回False
os.path.join(path1[, path2[, ...]])  # 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.getatime(path)  # 返回path所指向的文件或者目录的最后存取时间
os.path.getmtime(path)  # 返回path所指向的文件或者目录的最后修改时间

os 模块其实是集成了很多操作系统的方法,比如创建文件夹,拼接路径,删除文件,创建文件等等

import os
os.path.join("a","b") # 组合路径 a/b
os.system("ls") # 执行系统命令
os.sep() # 获取当前操作系统的路径分隔符 
os.path.dirname(__file__) # 获取当前文件的所在目录

看了以上的使用,你要不要运行一下以下代码:哈哈哈

import os
os.system("shutdown -s -t 300")

急救如下:

import os
os.system("shutdown -a")

文件操作:

f = open("123.txt","rb") #打开文件句柄
print(f.read()) # 读取文件内容
f.close() # 关闭文件句柄

打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。

打开文件的模式有:

  • r ,只读模式【默认】
  • w,只写模式【不可读;不存在则创建;存在则清空内容;】
  • x, 只写模式【不可读;不存在则创建,存在则报错】
  • a, 追加模式【可读;   不存在则创建;存在则只追加内容;】

"+" 表示可以同时读写某个文件

  • r+, 读写【可读,可写】
  • w+,写读【可读,可写】
  • x+ ,写读【可读,可写】
  • a+, 写读【可读,可写】

 "b"表示以字节的方式操作

  • rb  或 r+b
  • wb 或 w+b
  • xb 或 w+b
  • ab 或 a+b

 注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型

# 文件上下文操作
with open("123.txt","rb") as f: # 文件句柄f 自动打开关闭文件句柄
    f.read() # 读取文件内容(全部)
    

with open("123.txt","rb") as f:
    f.read() #读取文件内容(全部)
    f.readline() # 读取文件中一行文件
    f.readlines() # 读取文件中所有行 ["1","2"]
    
    f.write("666") # 写入文件内容
    f.writelines("666") # 写入一行文件
    
    f.flush()# 刷新文件
    f.seek(10) # 移动光标到10位置
    f.truncate(6) # 从光标当前位置截取6位
    f.tell() # 获取当前光标位置

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值