第二周 数据获取与表示 第一节 数据获取 Data Acquisition
2.1 Data Acquisition
一、本地数据获取 Local Data Acquisition:打开后才能进行读写;读文件、写文件;文件处理完毕要关闭文件(因为Python回缓存写入数据,若异常崩溃则无法写入)。
1 文件的打开 file_obj=open(filename,mode='r',buffering=-1):filename为路径和名称mode为可选参数,默认值为r;buffering也为可选参数,默认值为-1(0代表不缓冲,1或大于1的值表示缓冲一行或制定缓冲区大小)
>>>f1=open(r'd:\\infile.text')读数据默认缓冲大大小(为了读数据快一些请使用缓冲吧)
>>>f2=open(r'd:\\outfile.txt','w')
>>>f3=open('frecord.csv','ab',0)
返回值:open()函数返回一个文件(file)对象;文件对象可迭代;有关闭方法和许多读写相关的方法/函数,
—f.read(),f.write(),f.readines(),f.writelines()
—f.close()
—f.seek()
2 写文件—f.write():将一个字符串写入文件,
file_obj.write(str)
f=open(r'd:\python\001.txt','w')
f.write('wang shou fei ,hello!')
f.close()
3 读文件-f.read()
file_obj.read(size)-从文件中至多读出size字节数据,返回一个字符串;
file_obj.read()-读文件直到文件结束,返回一个字符串
eg.
4 其他读写函数
file_obj.readlines()
file_obj.readline()
file_obj.writelines()
5 文件读写例子:将文件companies.txt的字符串前加上1、2、3、···后写到另一个文件scompanies.txt中
f1=open(r'd:\companies.txt') cNames=f1.readlines() for i in range(0,len(cNames)):cNames[i]=str(i+1)+''+cNames[i] f1.close() f2=open(r'd:\scompanies.txt','w') f2.writelines(cNames) f2.close()
错误示范
正确示范:
file_obj.seek(offset,whence=0):在文件红移动文件指针,从whence(0表示文件头部,1表示当前位置,2表示文件尾部)偏移offset个字节;whence参数可选,默认值为0。
6 标准文件:当程序启动后,以下三种标准文件有效:stdin标准输入,stdout标准输出,stderr标准错误
二、网络数据获取:抓取网页,解析网页内容;urllib,urllib2,httplib,httplib2
利用urllib库获取网络数据:
urllib.urlopen()
f.read(),f.readline(),f.readlines(),f.close()等方法
利用urllib库获取yahoo财经数据 Obtain Yahoo financial data using urllib libraries
import urllib2 import re dStr = urllib2.urlopen('https://hk.finance.yahoo.com/q/cp?s=%5EDJI').read() m = re.findall('<tr><td class="yfnc_tabledata1"><b><a href=".*?">(.*?)</a></b></td><td class="yfnc_tabledata1">(.*?)</td>.*?<b>(.*?)</b>.*?</tr>', dStr) if m:print mprint '\n'print len(m) else: print 'not match'
转载于:https://www.cnblogs.com/mobuzao/p/6218932.html
第二周 数据获取与表示 第一节 数据获取 Data Acquisition相关推荐
- Kotlin学习笔记 第二章 类与对象 第一节类与继承(补)
参考链接 Kotlin官方文档 Kotlin docs | Kotlin 本系列为参考Kotlin中文文档 kotlin官方文档2020版.pdf-其它文档类资源-CSDN下载 第二章 第一节 类与继 ...
- 《概率论与数理统计》-第二章 随机变量及其分布-第一节 离散型随机变量及其分布-笔记
目录 第一节 离散型随机变量及其分布 随机变量 定义 概率分布律 常用离散型随机变量及其分布律 分布函数 定义 性质 第一节 离散型随机变量及其分布 随机变量 定义 设 E E E是随机试验,它的样本 ...
- 神经网络和深度学习-第二周神经网络基础-第四节:梯度下降法
2019独角兽企业重金招聘Python工程师标准>>> 本系列博客是吴恩达(Andrew Ng)深度学习工程师 课程笔记.全部课程请查看吴恩达(Andrew Ng)深度学习工程师课程 ...
- Android人生整理第二章:Java编程第一节-对象导论
抽象过程:建立解空间(问题建模) 和问题空间 (问题存在) 关联 万物皆为对象 程序是对象的集合,通过发送消息来告知彼此要做的 每个对象都有自己的由其他对象构成的存储 所有对象都有类型 某一特定类型的 ...
- Java学习---第二周周报
第二周周报 收获 关于第一周知识的查漏补缺 JDK,JRE,JVM 分别是什么,彼此之间的关系是怎么样的? JDK为Java语言的软件开发工具包,是整个Java的核心:包含JRE和JVM JVM是Ja ...
- 校园导航系统---2019暑期项目第二周总结
序: HALO,各位看客们大家好,距离暑假已经过去了两周,我们实验室的暑期留校生活也已经过去了两周,在第一周之后的一个星期,对暑期项目----校园导航系统进行了最后的完善. 历时两周完成了校园导航系统 ...
- 深度学习笔记第一门课第二周:神经网络的编程基础(上)
本文是吴恩达老师的深度学习课程[1]笔记部分. 作者:黄海广[2] 主要编写人员:黄海广.林兴木(第四所有底稿,第五课第一二周,第三周前三节).祝彦森:(第三课所有底稿).贺志尧(第五课第三周底稿). ...
- 软件构造 第二章 第一节 软件生命周期和版本控制
软件构造第二章 第一节 软件生命周期和版本控制 基本内容 Software Development Lifecycle (SDLC) Traditional software process mode ...
- 思维导图下载 注册安全_2019安全工程师《建筑实务》第二章第一节考点:物料提升机思维导图...
2019安全工程师<安全生产专业实务-建筑施工安全>第二章第一节考点:物料提升机思维导图,本节的大部分知识点前两节塔式起重机和施工升降机相似,大家可以对比之前考点的思维导图来理解记忆,本知 ...
最新文章
- 入职五年回顾(八) 2013年3月
- BERT在文档级排序中的应用
- SQL server 2008下载+安装详细
- 请领导批阅文件怎么说_领导说“谢谢”,该怎么回?低情商才说不客气,高情商的都这样说!...
- Spring 框架基础(04):AOP切面编程概念,几种实现方式演示
- chmod简介及其使用方法
- NumPy————NumPy广播机制的学习笔记
- 关务+物流领域的技术发展路线
- 紧急大项目的应付手法
- 综合行政执法改革依据
- web安全训练和教学光盘 – GameOver
- 徐波 博士 计算机,中文问答系统中问题分类技术研究
- 服务式办公室,价格影响选择
- C#区域性语言(CultureInfo)与资源本地化(WINFORM,多线程,原理可适用于网络开发)
- kubernetes--k8s--web管理界面使用--dashboardv1.8.3版本安装详细步骤
- 计算机专业的个人简历英语,计算机专业优秀个人英文简历范文【三篇】
- 计算机管理事件id10016,事件 ID 10016 已记录Windows - Windows Client | Microsoft Docs
- thinkphp框架之后台登录页面cookie有效期设置
- BIM模型文件下载——某高层办公楼Revit模型
- 7.4任务实践STM32F401RE :中断方式检测按键
热门文章
- 解决Android的ListView控件滚动时背景变黑
- 双机热备+Win2003下集群案例
- 使用VS Code新建编译Flutter项目
- OS开发UI篇—在UItableview中实现加载更多功能
- dedecms 实现分页填写页码直接跳转到分页 【dedecms】
- C++11中值得关注的几大变化 .
- AJAX解决中文乱码问题
- 解决Android Studio报错:DefaultAndroidProject : Unsupported major.minor version 52.0
- 【剑指offer-Java版】02实现单例模式
- 第五周项目一-三角形类雏形(1)