問題一
今天通過實驗樓學(xué)習(xí)Python3命令行火車票查看器,按步驟輸入一下代碼:
filehelper_1487040497138_18.png
出現(xiàn)的結(jié)果如下圖蜂林,并非教程的結(jié)果:
filehelper_1487040654781_5.png
經(jīng)查遥诉,為
Usage
塊和Options
之間缺一個換行,這應(yīng)該是docopt的代碼規(guī)范噪叙。
修改后.png
結(jié)果.png
所以還是不能盡抄代碼矮锈,還是要多看模塊文檔了解真正用法。
-
后來在docopt官方github的issues找到同樣問題:圖片發(fā)自簡書App
問題二
parse_station.py
代碼如下:
# coding:utf-8
import re
import requests
from pprint import pprint
url = 'https://kyfw.12306.cn/otn/resources/js/framework/station_name.js?station_version=1.8997'
response = requests.get(url, verify=False)
stations = re.findall(u'([\u4e00-\u9fa5]+)\|([A-Z]+)', response.text)
pprint(dict(stations), indent=4)
然后在windows中的cmd上輸入:python parse_station.py > stati.py
,然后打開stati.py出現(xiàn)如下亂碼:
亂碼.png
錯誤提示:
File was loaded in the wrong encoding:'UTF-8
顯然是編碼出現(xiàn)了問題构眯,經(jīng)查是因為windows的命令行默認(rèn)是GBK愕难,而保存下來的文件默認(rèn)是UTF-8,所以解決方法是先把cmd的編碼改為UTF-8惫霸,然后重新運行一下(暫時還未測試,網(wǎng)上查有更改方法)葱弟。我用的辦法是:點擊Pycharm右上方的
Reload in another encoding
壹店,把亂碼文檔先改成GBK編碼,這樣就顯示正常了芝加,然后復(fù)制文檔內(nèi)容硅卢,再新建一個.py文檔,把內(nèi)容粘貼進去藏杖,此時就能在UTF-8下正常顯示內(nèi)容将塑。