刺猬教你量化投资(二十二):Python2向Python3的转变

之前我们用习惯了Python2.7,但毕竟Python3才是未来的大趋势,许多库也开始升级兼容新版本的Python,因此我们需要与时俱进一下,了解一些新的特性和语法。

读取数据

requests 是一个很方便读取数据的API,该库被称为谁都看得懂的API。使用方法非常简单,首先导入进python。

import requests #注意要加上s

#requests.get(r'网址') 可以将该网址的内容导入进来
content = requests.get(r'https://baijiahao.baidu.com/s?id=1619614559149684896&wfr=spider&for=pc')
content.text

输出结果就是一堆网页的内容

'<!Doctype html>\n<html xmlns="http://www.w3.org/1999/xhtml"><head><meta charset="utf-8"/><meta name="referrer" content="always"><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"><link rel="shortcut icon" href="https://gss0.bdstatic.com/5bd1bjqh_Q23odCf/static/wiseindex/img/favicon64.ico" type="image/x-icon"><link rel="apple-touch-icon-precomposed" href="https://gss0.bdstatic.com/5bd1bjqh_Q23odCf/static/wiseindex/img/screen_icon_new.png"><title>慢慢挑,新能源汽车产业链中的投资机会</title>……

忽略报错和兼容提示

这个超简单,只需加上一句import warnings; warnings.simplefilter('ignore')即可。

读取和储存数据

#先设定一下储存文件的路径
import numpy as np
import pandas as pd
import requests
import os
path = r'c:\python'
content = requests.get(r'https://baijiahao.baidu.com/s?id=1619614559149684896&wfr=spider&for=pc')
with open(path+'webpage.data', 'w') as webarticle:     #在路径下写入一个webpage.data文件,简称为webarticle
        webarticle.write(content.text)   #在webarticle中写入content.text的内容
os.chdir(path) #表示转到path目录下
df = pd.read_csv(path+‘webpage.data’)    #读取刚刚创建并写入内容的文件
df

df.ix的替代用法

在python3中,df.ix被取消了,因为在行标签和具体行的识别上容易混淆。现在一律用两个操作,一个是iloc,一个是loc。
df.iloc[:3,:2] 表示选取前三行和前两列
df.loc[:3,‘A’] 表示选取前四行和第A列,因为是标签,所以选取了0、1、2、3行

如果想要实现混搭的指定,则可以这样写:
df.iloc[[0, 2], df.columns.get_indexer(['A', 'B'])] # 选取第1行和第三行的A、B两列
df.loc[df.index[:3],[x for x in df.columns if 'boy' in x]] #选取前3行且列名包含boy的列

刺猬偷腥
2019年1月11日

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容