《python爬虫开发与项目实战》基础篇(一)

一.python安装

1.python IDLE

下载官网:www.python.org

注:在选择安装组件时勾选所有组件,特别注意勾选pip和Add python.exe to Path

2.pycharm

下载官网:https://www.jetbrains.com/pycharm/

由JetBrains打造的一款Python IDE,同时支持Google App Engine,IronPython

3.Anaconda

下载官网:https://www.anaconda.com/download/

一个开源的Python发行版本,包含了大量安装好的科学包如:numpy、pandas等

二.IO编程

1.文件读写

打开文件:

open函数中的mode参数:

open函数中的buffering参数:

文件读取与写入:经常用到的方法有read(),readlines(),write(),close()

read(size)一次最多读取size个字节,返回字符串;readlines()一次读取全部内容按行返回列表

文件使用完后必须关闭!使用try...finally进行文件操作防止IO异常

try:
f = open("D:/Python/test.txt","r+") # 'r+' == r+w(可读可写,文件若不存在就报错(IOError))
print(f.read())
f.write("def")
f.seek(0,0) # 把文件指针从末尾移到开头
print(f.read())
finally:
if f:
f.close()

python中可使用with语句替代try...finally代码块和close()方法

with open("D:/Python/test.txt","r+") as f:
print(f.read())
f.write("def")
f.seek(0,0)
print(f.read())

2.目录操作

常用模块:os模块和shutil模块

3.序列化

把内存中的变量变成可存储或可传输的过程就是序列化

python中采用pickle模块实现序列化,主要使用dump方法(将序列化后的对象直接写入文件)或dumps方法(将任意对象序列化成一个str再写入文件保存)

import pickle
d = dict(url="index.html",title="首页",content="首页")
print(pickle.dumps(d))
with open("D:/Python/test.txt","wb") as f:
pickle.dump(d,f)

pickle模块实现反序列化主要使用load方法(将文件直接反序列化为对象)或loads方法(将str反序列化为对象)

with open("D:/Python/test.txt","rb") as f:
d = pickle.load(f)
print(d)
d = pickle.loads(b'\x80\x03}q\x00(X\x03\x00\x00\x00urlq\x01X\n\x00\x00\x00index.htmlq\x02X\x05\x00\x00\x00titleq\x03X\x06\x00\x00\x00\xe9\xa6\x96\xe9\xa1\xb5q\x04X\x07\x00\x00\x00contentq\x05h\x04u.')
print(d)

python安装与IO编程的更多相关文章

  1. python基础之IO编程

    读文件 with open('/path/to/file', 'r') as f: print(f.read()) 调用read()会一次性读取文件的全部内容,read()函数里面可以传入每次最多读取 ...

  2. 【廖雪峰老师python教程】——IO编程

    同步IO 异步IO 最常见的IO——读写文件 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求操作系统打开一 ...

  3. python实用笔记——IO编程

    打开文件 f = open('/Users/michael/test.txt', 'r') 再读取 >>> f.read() 'Hello, world!' 最后关闭 >> ...

  4. Python之IO编程——文件读写、StringIO/BytesIO、操作文件和目录、序列化

    IO编程 IO在计算机中指Input/Output,也就是输入和输出.由于程序和运行时数据是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方,通常是磁盘.网络等,就需要IO接口.从 ...

  5. Python之IO编程

    前言:由于程序和运行数据是在内存中驻留的,由CPU这个超快的计算核心来执行.当涉及到数据交换的地方,通常是磁盘.网络等,就需要IO接口.由于CPU和内存的速度远远高于外设的速度,那么在IO编程中就存在 ...

  6. python异步IO编程(一)

    python异步IO编程(一) 基础概念 协程:python  generator与coroutine 异步IO (async IO):一种由多种语言实现的与语言无关的范例(或模型). asyncio ...

  7. python同步IO编程——基本概念和文件的读写

    IO——Input/Output,即输入输出.对于计算机来说,程序运行时候数据是在内存中的,涉及到数据交换的地方,通常是磁盘.网络等.比如通过浏览器访问一个网站,浏览器首先把请求数据发送给网站服务器, ...

  8. python异步IO编程(二)

    python异步IO编程(二) 目录 开门见山 Async IO设计模式 事件循环 asyncio 中的其他顶层函数 开门见山 下面我们用两个简单的例子来让你对异步IO有所了解 import asyn ...

  9. io编程,python

    IO在计算机中指Input/Output,也就是输入和输出. Stream(流): 可以把流想象成一个水管,数据就是水管里的水,但是只能单向流动.Input Stream就是数据从外面(磁盘.网络)流 ...

随机推荐

  1. Android Studio连接不到MuMu模拟器;

    网易推出的mumu模拟器还挺好用的,主要是流畅占内存小: 但是安装mumu模拟器后,as连接不到mumu模拟器: 好了,教程来了:两步走: 先把模拟器运行起来! 第一步:打开Terminal,输入:  ...

  2. Django中的视图

    Django的View(视图) 一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应. 响应可以是一张网页的HTML内容,一个重定向,一个404错误, ...

  3. CF1017G The Tree

    /* 这是什么神仙题目QAQ 首先考虑在序列上的问题 先不考虑修改成白色, 一个白点能r被染成黑色 意味着能够找到一个l使得在l-r中的操作1次数大于等于 r - l + 1 我们把初始值覆盖成-1就 ...

  4. WPF Combobox选中事件

    /// <summary> /// 选中事件 /// </summary> /// <param name="sender"></para ...

  5. jq check 复选变单选。

    $("input[type='checkbox']").on("click",function(e){ var $checked = $("input ...

  6. 将tgz文件解压到指定目录

    转:http://blog.csdn.net/zhenwenxian/article/details/4400404 tar在linux上是常用的打包.压缩.加压缩工具,他的参数很多,折里仅仅列举常用 ...

  7. springMVC源码学习之获取参数名

    1.入口到参数处理调用流程 入口为spring-webmvc-4.3.18.RELEASE.jar中org.springframework.web.servlet.DispatcherServlet. ...

  8. 完全分布式hadoop2.5.0安装 VMware下虚拟机centos6.4安装1主两从hadoop

    请跟我走,从零开始搭建hadoop2.5.0环境.总览第一步:搭建三台能不用密码shh的虚拟机.第二步,装jdk,解压hadoop文件,配置环境变量和xml文件.第三步,复制克隆两个slave机器.调 ...

  9. chrome也可以整张网页截图,保存完整网页为图片

    转自:http://www.webkaka.com/blog/archives/chrome-save-a-webpage.html 关于浏览器截图,一直以为Chrome无能为力,最近发现,原来Chr ...

  10. Spring Cloud (4)zool 路由网关

    一:作用: 1.1  转发 1.2  过滤 二.pom 三.启动类 ------------------------------------------------------------------ ...