2018-07-23

2018-07-24  本文已影响0人  初了谁的眼
  1. 主要内容
    认识系统中的文件
    操作系统中的文本文件
    操作系统中的二进制文件
    操作程序中的字符串数据[特殊:JSON]
    操作程序中的对象数据[序列化:反序列化]
    扩展:操作办公软件文档数据

(1)创建文件:创建文件夹:os.makedirs()创建多级文件夹 os.mkdir()创建单个文件夹

Ps:

import os
os.mkdir("d:/新建文件夹")
os.makedirs("d:/创建文件夹/新建文件夹/……")
注释:上面以及下面所叙述的内容全部都是基于windows操作系统。
os.mknod(..)适用于unix/linux操作系统的函数
os.mknod("d:/创建文件夹/命名.txt")
windows操作系统里面创建文件夹里的文件直接输入:open("d:/创建文件夹/命名.txt")
打开一个已经存在的文件:一般使用open()函数替代os.open()
os.open("d:/新建文件夹/01.txt",flags=1)

查看文件夹下面的所有内容

def chk_files(s_path):

if os.path.isfile(s_path):
    print("这是一个文件:", s_path)

if os.path.isdir(s_path):
    print("这是个一个文件夹", s_path)

    f_list = os.listdir(s_path)

    for file in f_list:
        chk_files(s_path + "/" + file)

chk_files("d:/360驱动大师目录")

打开python交互模式
输入操作指令:【[ 'buffer缓存', 'close关闭', 'closed关了吗?', 'detach',
'encoding编码', 'errors错误', 'fileno', 'flush刷新',
'isatty', 'line_buffering', 'mode模式', 'name名称',
'newlines一行', 'read读取', 'readable可以读取吗?', 'readline读取一行',
'readlines全部读取每一行作为一个元素的列表',
'seek跳转指定位置|偏移', 'seekable可以偏移吗?', 'tell',
'truncate', 'writable可以写入吗?', 'write写数据', 'writelines'写一个列表进入]

open(file,mode='rb/wb')
rb:二进制读取文件
wb:二进制写入文件
1,文件操作
和操作系统交互,python标准库:os,os.path
交互命令行:import os ->dir(os/os.path) 学会使用help

创建文件:open、创建文件夹mkdir、创建多级文件夹、makedirs
删除文件:remove\rmdir\removedirs
重命名文件:rename
查看文件信息:getctime()/getatime()/getmtime()/getsize()/
create access modify
遍历文件:isfile()/isdir()/listdir()/scandir()
2,文件操作编程
文本文件内容
f = open(‘要创建的文件名字和位置’,mode = "rt/wt")
f.write(str)/writelines(list)
f.read()/readline()/readlines()【一般不用,容易造成卡顿系统】
二进制文件内容
f = open('要创建的文件名字和位置',mode = "rb/wb")
f.write(bytes/bytearray)
f.read()

快捷操作:with语句:自动打开和关闭文件
    with open(file,mode='rt/wt/rb/wb')as 随便一个变量例如(f):
        f.write()/read()

3,程序数据内容:
文本文件的操作:json;数据类型的转换
将一个程序中的数据,写入到文本文件中

json.dump(dict,open(‘文件’,mode='r')) 

如果没有此‘文件’,程序运行时会自动创建
从【文本文件】中读取数据到程序中,,直接转换成对应的类型

    data = json.load(dict,open('文件’,mode = 'w'))

二进制文件的操作:pickle:数据的文件操作
将程序中的数据,写入到二进制文件中

                  pickle.dump(dict,open(‘文件’,mode ="wb"))

从【二进制文件】中读取数据到程序中

                      pickle.load(dirt,open(‘文件’,mode = "rb"))
上一篇下一篇

猜你喜欢

热点阅读