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相关推荐

  1. Kotlin学习笔记 第二章 类与对象 第一节类与继承(补)

    参考链接 Kotlin官方文档 Kotlin docs | Kotlin 本系列为参考Kotlin中文文档 kotlin官方文档2020版.pdf-其它文档类资源-CSDN下载 第二章 第一节 类与继 ...

  2. 《概率论与数理统计》-第二章 随机变量及其分布-第一节 离散型随机变量及其分布-笔记

    目录 第一节 离散型随机变量及其分布 随机变量 定义 概率分布律 常用离散型随机变量及其分布律 分布函数 定义 性质 第一节 离散型随机变量及其分布 随机变量 定义 设 E E E是随机试验,它的样本 ...

  3. 神经网络和深度学习-第二周神经网络基础-第四节:梯度下降法

    2019独角兽企业重金招聘Python工程师标准>>> 本系列博客是吴恩达(Andrew Ng)深度学习工程师 课程笔记.全部课程请查看吴恩达(Andrew Ng)深度学习工程师课程 ...

  4. Android人生整理第二章:Java编程第一节-对象导论

    抽象过程:建立解空间(问题建模) 和问题空间 (问题存在) 关联 万物皆为对象 程序是对象的集合,通过发送消息来告知彼此要做的 每个对象都有自己的由其他对象构成的存储 所有对象都有类型 某一特定类型的 ...

  5. Java学习---第二周周报

    第二周周报 收获 关于第一周知识的查漏补缺 JDK,JRE,JVM 分别是什么,彼此之间的关系是怎么样的? JDK为Java语言的软件开发工具包,是整个Java的核心:包含JRE和JVM JVM是Ja ...

  6. 校园导航系统---2019暑期项目第二周总结

    序: HALO,各位看客们大家好,距离暑假已经过去了两周,我们实验室的暑期留校生活也已经过去了两周,在第一周之后的一个星期,对暑期项目----校园导航系统进行了最后的完善. 历时两周完成了校园导航系统 ...

  7. 深度学习笔记第一门课第二周:神经网络的编程基础(上)

    本文是吴恩达老师的深度学习课程[1]笔记部分. 作者:黄海广[2] 主要编写人员:黄海广.林兴木(第四所有底稿,第五课第一二周,第三周前三节).祝彦森:(第三课所有底稿).贺志尧(第五课第三周底稿). ...

  8. 软件构造 第二章 第一节 软件生命周期和版本控制

    软件构造第二章 第一节 软件生命周期和版本控制 基本内容 Software Development Lifecycle (SDLC) Traditional software process mode ...

  9. 思维导图下载 注册安全_2019安全工程师《建筑实务》第二章第一节考点:物料提升机思维导图...

    2019安全工程师<安全生产专业实务-建筑施工安全>第二章第一节考点:物料提升机思维导图,本节的大部分知识点前两节塔式起重机和施工升降机相似,大家可以对比之前考点的思维导图来理解记忆,本知 ...

最新文章

  1. 入职五年回顾(八) 2013年3月
  2. BERT在文档级排序中的应用
  3. SQL server 2008下载+安装详细
  4. 请领导批阅文件怎么说_领导说“谢谢”,该怎么回?低情商才说不客气,高情商的都这样说!...
  5. Spring 框架基础(04):AOP切面编程概念,几种实现方式演示
  6. chmod简介及其使用方法
  7. NumPy————NumPy广播机制的学习笔记
  8. 关务+物流领域的技术发展路线
  9. 紧急大项目的应付手法
  10. 综合行政执法改革依据
  11. web安全训练和教学光盘 – GameOver
  12. 徐波 博士 计算机,中文问答系统中问题分类技术研究
  13. 服务式办公室,价格影响选择
  14. C#区域性语言(CultureInfo)与资源本地化(WINFORM,多线程,原理可适用于网络开发)
  15. kubernetes--k8s--web管理界面使用--dashboardv1.8.3版本安装详细步骤
  16. 计算机专业的个人简历英语,计算机专业优秀个人英文简历范文【三篇】
  17. 计算机管理事件id10016,事件 ID 10016 已记录Windows - Windows Client | Microsoft Docs
  18. thinkphp框架之后台登录页面cookie有效期设置
  19. BIM模型文件下载——某高层办公楼Revit模型
  20. 7.4任务实践STM32F401RE :中断方式检测按键

热门文章

  1. 解决Android的ListView控件滚动时背景变黑
  2. 双机热备+Win2003下集群案例
  3. 使用VS Code新建编译Flutter项目
  4. OS开发UI篇—在UItableview中实现加载更多功能
  5. dedecms 实现分页填写页码直接跳转到分页 【dedecms】
  6. C++11中值得关注的几大变化 .
  7. AJAX解决中文乱码问题
  8. 解决Android Studio报错:DefaultAndroidProject : Unsupported major.minor version 52.0
  9. 【剑指offer-Java版】02实现单例模式
  10. 第五周项目一-三角形类雏形(1)