文件的操作

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

本文主要介绍文件的操作


提示:以下是本篇文章正文内容,下面案例可供参考

一、文件读取操作?

在这里插入图片描述

# 文件操作
'''
文件上传
保存log
open()
系统函数:
open(file,mode,buffering,encode).
读
 open(path/filename,'rt')----->返回值:stream(管道)
 container=stream.read() ----->读取管道中内容
 注意:如果传递的path/filename有误,则会报错,FileNotFoundError
 如果是图片则不能使用默认的读取方式,mode='rb'
 总结
 read() 读取所有内容
 readline() 每次读取一行内容
 readlines() 读取所有的保存到列表中
 readable() 判断是否可读的
'''
stream=open(r"D:\LZQA\lzq.txt")
#container=stream.read()
#print(container)

result=stream.readable() #判断是否可以读取 True False
print(result)
''''
while True:
    line=stream.readline()
    print(line)
    if not line:
        break
        '''
lines=stream.readlines() #保存到列表中
print(lines)
for i in lines:
    print(i)

stream=open(r'C:\Users\PC\Pictures\QQ图片20200106151759.png','rb')
container= stream.read()
print(container)

二、文件的写操作

在这里插入图片描述

'''
stream=open(r"D:\LZQA\lzq.txt",'w')
mode 是 'w' 表示写操作

方法:
    write(内容) 每次都会将原来的内容清空,然后写当前的内容
    writelines(lterable) 没有换行效果
    stream.writelines(['赌神高进\n','赌侠小刀\n,’赌圣周星星\n']) ---->> 自己加
如果mode='a'
'''


stream=open(r"D:\LZQA\lzq.txt",'a')
stream.writable()  #判断是否可写

s='''
你好:
  欢迎来到澳门博彩赌场,赠送给你一个金币:
        赌王:高进
'''


result=stream.write('hello')
#print(result)
stream.write('龙五')
stream.writelines(['赌神高进\n','赌侠小刀\n,’赌圣周星星\n')

stream.write('僵尸先生')
stream.close() #释放资源

三 文件的复制

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

#文件的复制
'''
原文件: c:\p1\girl.jpg
目标文件:c:\p2\girl.jpg
with 结合 open 使用,可以帮助我们自动释放资源
'''

with open(r'C:\Users\PC\Pictures\批注 2020-01-04 132609.png','rb') as stream:
    container=stream.read()  #读取文件的内容
    with open(r'D:\LZQA\girl.jpg','wb')as wstream:
        wstream.write(container)
print('文件复制完成')

四 os模块

# 模块: os.py
'''
os.path:
os.path.dirname(__file___ 获取当前文件所在的文件所在的目录
os.path.join(path,'') 返回的是一个拼接后的新的路径
'''
import random
import os

print(os.path)
path=os.path.dirname(__file__)
print(path)
print(type(path))

#p1\girl.jpg ---------->保存在当前文件所在的目录
with open(r'C:\Users\PC\Pictures\批注 2020-01-04 132609.png','rb') as stream:
    container=stream.read()  #读取文件的内容
    print(stream.name)
    file=stream.name
    filename=file[file.rfind('\\')+1:] #截取文件名
    path = os.path.dirname(__file__)
    result=os.path.join(path,filename)
    print(result)
    with open(result,'wb')as wstream:
        wstream.write(container)
print('文件复制完成')

五 相对路径与绝对路径

with open('a1.txt','w') as wstream :  #如果指定文件不存在则会创建新的文件
    wstream.write('hello world')
import os

r=os.path.isabs(r'D:\LZQA\girl.jpg') #判断是否为绝对路径
print('---->',r)

b=os.path.isabs('a.txt')  #..表示当前文件的上一级 ../
print('------>',b)

#获取路径:directory 目录 文件夹

path=os.path.dirname(__file__)
print(path)

#通过相对路基得到绝对路径
path=os.path.abspath('a1.txt')
print(path)

#获取当前文件的绝对路径
path=os.path.abspath(__file__)
print(path)

#获取当前py文件所在的目录的绝对路径
path=os.getcwd() #类似os.path.dirname(__file__)
print(path)

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值