刺蝟教你量化投資(二十二):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日

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章