文件的类型

什么是文件?

一堆.py/.txt 存储着文字信息文件,

文件的分类

二进制文件:由0、1组成,例如.png文件

文本文件:由单一特定编码组成的文件,如utf8,例如 .txt文件

文件的打开与关闭

文件处理的三个步骤

  • 打开(找到路径打开)

    打开模式 描述
    r 只读不可写
    w 只写不可读(会清空文件)
    a 追加不可读
    r+ 可读可写
    w+ 可读可写(会清空文件)
    a+ 可读可写
    b 二进制模式,用于打开多媒体文件
    t 文本模式(默认模式)
  • 操作(读取和写入)

    读取 描述
    read 读取全部内容
    readline 读取一行内容
    readlines 读取文件所有行
    写入 描述
    write 写入字符串
    writelines 将一个列表的元素写入文件
    seek 改变当前文件操作指针的位置
  • 关闭(保存并关闭)

    .flush() 保存

    .close() 关闭

使用方式

file_path = 'D:\上海python12期视频\python12期预科班视频\day 05\新时代中国特色社会主义.txt'
f = open(file_path,'r',encoding='gbk') # encoding告诉计算机用什么编码格式翻译硬盘中的0和1
print(f.read())
f.close()
with open(r'D:\上海python12期视频\python12期预科班视频\day 05\huijiadeyouhuo.txt','r+',encoding='utf8') as fr:
print(fr.read())

爬虫

requests库的使用

爬取网站的图片和视频 并保存到本地

# coding=utf-8
import requests
#爬取图片
w = requests.get(
url="http://www.xiaohuar.com/d/file/20190628/26700fc24ce19a534d1ad797937426ac.jpg"
)
#接收二进制图片
print(w.content)
with open("校花图片1.png","wb") as f:
f.write(w.content)
print("校花图片爬取成功!") # 爬取视频
w = requests.get(
url="https://video.pearvideo.com/mp4/adshort/20190827/cont-1595380-14312754_adpkg-ad_hd.mp4"
) with open("梨视频.mp4","wb") as f:
f.write(w.content)
print("视频爬取成功!")

爬取豆瓣电影的排行榜 并保存在本地

# coding=utf-8
import requests
import re w = requests.get(
url="https://movie.douban.com/top250"
)
## 获取响应文本
print(w.text) '''
1.电影名称
2.电影详情页链接
3.电影评分
4.电影评价人数
'''
#解析并提取数据
# 查找所有
# re.S: 全局查找
# re.findall('正则匹配规则', '解析文本', re.S)
move_list = re.findall('<div class="item">.*?<a href="(.*?)">.*?<span class="title">(.*?)</span>.*?<span class="rating_num" property="v:average">(.*?)</span>.*?<span>(.*?)人评价</span>',w.text,re.S)
print(move_list) num = 1
with open("douban.txt","a",encoding="utf8") as f:
for line in move_list:
print("%s %s的网址为 %s,%s人评分为 %s" % (num, line[0], line[1], line[2], line[3]))
f.write("%s %s的网址为 %s,%s人评分为 %s" % (num, line[0], line[1], line[2], line[3]) + "\n")
f.flush()
num += 1 print("数据爬取成功,文件已保存。")

Python-基本文件处理的更多相关文章

  1. Python读写文件

    Python读写文件1.open使用open打开文件后一定要记得调用文件对象的close()方法.比如可以用try/finally语句来确保最后能关闭文件. file_object = open('t ...

  2. python计算文件的md5值

    前言 最近要开发一个基于python的合并文件夹/目录的程序,本来的想法是基于修改时间的比较,即判断文件有没有改变,比较两个文件的修改时间即可.这个想法在windows的pc端下测试没有问题. 但是当 ...

  3. python操作文件案例二则

    前言 python 对于文件及文件夹的操作. 涉及到 遍历文件夹下所有文件 ,文件的读写和操作 等等. 代码一 作用:查找文件夹下(包括子文件夹)下所有文件的名字,找出 名字中含有中文或者空格的文件 ...

  4. Python :open文件操作,配合read()使用!

    python:open/文件操作 open/文件操作f=open('/tmp/hello','w') #open(路径+文件名,读写模式) 如何打开文件 handle=open(file_name,a ...

  5. python学习 文件操作

    一.python打开文件 #=====================python 文件打开方式 open()===================== # open(fileName,type) t ...

  6. Python之文件读写

    本节内容: I/O操作概述 文件读写实现原理与操作步骤 文件打开模式 Python文件操作步骤示例 Python文件读取相关方法 文件读写与字符编码 一.I/O操作概述 I/O在计算机中是指Input ...

  7. python 遍历文件夹 文件

    python 遍历文件夹 文件   import os import os.path rootdir = "d:\data" # 指明被遍历的文件夹 for parent,dirn ...

  8. python检测文件的MD5值

    python检测文件的MD5值MD5(单向散列算法)的全称是Message-Digest Algorithm 5(信息-摘要算法),经MD2.MD3和MD4发展而来.MD5算法的使用不需要支付任何版权 ...

  9. Python编码/文件读取/多线程

    Python编码/文件读取/多线程 个人笔记~~记录才有成长   编码/文件读取/多线程 编码 常用的一般是gbk.utf-8,而在python中字符串一般是用Unicode来操作,这样才能按照单个字 ...

  10. python 读写文件和设置文件的字符编码

    一. python打开文件代码如下: f = open("d:\test.txt", "w") 说明:第一个参数是文件名称,包括路径:第二个参数是打开的模式mo ...

随机推荐

  1. 专访阿里云MVP黄胜蓝:90 后 CTO花了6年,改变了你日常生活里的这件事

    [黄胜蓝:现任武汉极意网络科技有限公司CTO.高中时期NOIP一等奖保送至武汉大学,大学期间曾指导团队获得世界数学建模大赛金奖,同时负责武汉大学学生校园门户网站的运维工作.于2013年加入武汉极意网络 ...

  2. thinkphp 切换数据库

    除了在预先定义数据库连接和实例化的时候指定数据库连接外,我们还可以在模型操作过程中动态的切换数据库,支持切换到相同和不同的数据库类型.用法很简单, 只需要调用Model类的db方法,用法: 常州大理石 ...

  3. identifier of an instance of xx.entity was altered from xxKey@249e3cb2 to xxKey@74e8f4a3; nested exception is org.hibernate.HibernateException: identifier of an instance of xxentity was altered from错误

    用entityManager保存数据时报错如下 identifier of an instance of xx.entity was altered from xxKey@249e3cb2 to xx ...

  4. go操作空指针导致supervisor进程服务挂机的坑

    一.起因 在数据库中直接手动插入了某条记录,但由于该记录的某个字段的空值,与另一个字段的状态码不符合,在go程序中,突然操作了该空字段的指针,导致程序panic挂机. panic: runtime e ...

  5. mac 10.9 install cocoapods issue

    If you've installed the OS X Mavericks Beta and you're having ruby issues like this: /System/Library ...

  6. 应用程序正常初始化(0xc0150002)失败的终极解决方案

    转自VC错误:http://www.vcerror.com/?p=62 最近做一个项目写了一个VC6下的MFC程序,结果传到别人的机子上(WIN7)出现了应用程序正常初始化(0xc0150002)失败 ...

  7. 固定定位fixed,绝对定位absolute,相对定位relative;以及overflow

    固定定位position:fixed /*固定定位 1.定位属性值:fixed 2.在页面中不再占位(浮起来了) 3.一旦定位后,定位的布局方位 top.bottom.left.right都能参与布局 ...

  8. Java基础拾遗(二) — 关于equals(),hashcode()和 ==

    这里分别讲==和equals()的关系,以及equals()和hashcode()的关系 讲解之前,需要先明白对象的内容.对象的引用,基本类型,引用类型这几个概念,此处不做解释 一.==和equals ...

  9. javaSpring学习总结day_02

    使用注解注入: 1.用于创建bean对象 @Component: 作用:相当于配置了一个bean标签 位置:类上面 属性:value,含义是bean的id,当不写时,有默认值,默认值是当前类的短名,首 ...

  10. Linux-c对一个十六进制数的某一位取反

    enum SWITCH_FLAG { SWITCH_ALL_FLAG = , SWITCH_WEB_FLAG = , …… } unsigned int switch_by_bit_value = 0 ...