python-文件与文件系统

open()
open(file, mode=‘r’, buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

·file: 必需,文件路径(相对或者绝对路径)。
·mode: 可选,文件打开模式
·buffering: 设置缓冲
·encoding: 一般使用utf8
·errors: 报错级别
·newline: 区分换行符
·closefd: 传入的file参数类型

文件打开模式(mode)
在这里插入图片描述
文件对象方法
在这里插入图片描述

f=open('.\\python.txt',mode='r')
print(f)
for i in f:
    print(i)
c=open('C:\\Users\\帅哥的电脑\\Desktop\python练习\\韩绘锦.txt',mode='w')
c.write("hanhuijin")
c.close()
c=open('.\\韩绘锦.txt',mode='r+')
print(c.read())
c.seek(3,0)
print(c.read())
c.write('love   lsgo')
c.seek(0,0)
print(c.read())
c.writelines (["韩绘锦",'love','lsgo'])
c.seek(0,0)
print(c.read())
print(c.tell ())
c.seek(0,0)
c.truncate ()
print(c.read())
#
<_io.TextIOWrapper name='.\\python.txt' mode='r' encoding='cp936'>
line1

line2

line3
hanhuijin
huijin
hanhuijinlove   lsgo
hanhuijinlove   lsgo韩绘锦lovelsgo
34

>>> 

os模块中常用函数的使用方法
在这里插入图片描述

os.path模块中常用函数使用方法
在这里插入图片描述

import os
path=os.getcwd ()
print(os.getcwd ())
print(os.listdir('.'))
os.chdir('C:\\Users\\帅哥的电脑\\Desktop\\python练习\\text ')
print(os.getcwd ())
print(os.listdir('.'))
os.makedirs(r'.\test\1\2\3')
#
C:\Users\帅哥的电脑\Desktop\python练习
['continue 练习.py', 'os.path模块中常用的函数.png', 'os模块中常用函数.png', 'pyhon练习txt', 'python.txt', 'python文件与文件系统mode打开模式.png', 'python文件与文件系统文件对象方法.png', 'test.txt', 'text', 'text.txt', '基础练习.py', '字符串格式化符号.png', '市场营销.docx', '格式化操作符辅助指令.png', '猜数.py', '联系.py', '运算符.png', '韩绘锦.txt']
C:\Users\帅哥的电脑\Desktop\python练习\text
['test']
import os
path=os.getcwd ()
print(os.getcwd ())
print(os.listdir('.'))
os.chdir('C:\\Users\\帅哥的电脑\\Desktop\\python练习\\text ')
print(os.getcwd ())
print(os.listdir('.'))
print(os.walk('C:'))
#
C:\Users\帅哥的电脑\Desktop\python练习
['continue 练习.py', 'os.path模块中常用的函数.png', 'os模块中常用函数.png', 'pyhon练习txt', 'python.txt', 'python文件与文件系统mode打开模式.png', 'python文件与文件系统文件对象方法.png', 'text', '基础练习.py', '字符串格式化符号.png', '格式化操作符辅助指令.png', '猜数.py', '联系.py', '运算符.png', '韩绘锦.txt']
C:\Users\帅哥的电脑\Desktop\python练习\text
['test', '删除.txt']
<generator object walk at 0x000001E0AA483F48>

序列化和反序列化的定义

·序列化:就是把不可传输的对象转换为可存储或可传输的过程
·反序列化:就是把在磁盘,等介质中的数据转换为对象
pickle模块的使用

import pickle
dic1={'one':1,'two':2,'three':3}
a=pickle.dumps (dic1)
print(a,type(a))
b=pickle.loads(a)
print(b,type(b))
#
b'\x80\x03}q\x00(X\x03\x00\x00\x00oneq\x01K\x01X\x03\x00\x00\x00twoq\x02K\x02X\x05\x00\x00\x00threeq\x03K\x03u.' <class 'bytes'>
{'one': 1, 'two': 2, 'three': 3} <class 'dict'>
import pickle
dic1={'one':1,'two':2,'three':3}
a=open('.\\text.txt','wb')
pickle.dump(dic1,a)
a.close()
b=open('.\\text.txt','rb')
result=pickle.load(b)
print(b.read())
b.close()
print(id(dic1),result,id(result))
#
b''
1806383632776 {'one': 1, 'two': 2, 'three': 3} 1806383812024
结果说明反序列化后的对象不是原来的对象了
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值