[Python] 讓Pipenv 幫你做套件管理

什麼是Pipenv?

Pipenv 是一個簡單、更快速的 Python 套件管理工具,整合Pipfile, pip, virtualenv,我們需要一個乾淨環境來開發,會使用 virtualenv 建一個虛擬環境,再透過 pip 以及 requirements.txt 去管理套件的版本。
解決痛點:
剛學python時,對於套件管理不是那麼熟悉,路徑設置也是一知半解,用到的套件都亂安裝,安裝方式有時根本大雜燴,(mac為例)可能用brew install ,又用anaconda install,或是 pip install,又有 pip3 install,有時候發生,明明就有裝,但是 import 的時候卻找不到套件,後來才發現原來是該目錄沒有加入path,或是把專案發佈的時,不清楚這個專案到底安裝了哪些套件,一個一個回去查找專案內容等問題……
這時如果有個工具可在虛擬環境下做套件管理,就可以解決上述問題

Read more

[Python] Lambda函式

前言

一般來說,如果Python要定義一個函式,基本上是使用def來定義,而Lambda函式是一種無名函式(anonymous function),不需給函數名稱,基於追求簡潔的設計原則,內容只能有一則運算式。

Lambda函式的程式碼只能有一行,可以放一個運算式,或是一個單行if-else,但不能使用指定運算子,也不可以跑迴圈。

Read more

[Python] 物件導向入門

什麼是物件導向?

將現實生活中的人、事、時、地、物進行資料抽象化。
類別,是具有相同屬性(Attribute)和功能(Method)的物件抽象集合,類別中包含資料的屬性、方法(也可以稱作行為),將這些類別對應到真實生活中的人、事、時、地、物時稱作”實例化”,可以說這些對應的實際實體為實際案例(簡稱”實例”),也作”物件”。

Read more

[Python] 讓Python程式碼更Pythonic

前言

之前跟朋友一起討論程式時,有時覺得寫的程式碼太多行,想辦法盡量寫得精簡一些,於是開始找網路上各個大神的寫法,沒查還好,一查天為驚人,藉此機會筆記一下,之後可以回過頭來檢視一下自己寫的程式碼品質。

Read more

[Python] MySQL 資料操作

前言

本篇用於紀錄使用Python操作MySQL

安裝MySQL

因為之前有下載MAMP,裡面已經安裝過MySQL。

安裝pysql

1
2
3
pip install pymysql

pip3 install pymysql

安裝完成後建立名為crud_test的資料庫。

Read more

[Python] Pandas資料處理- 基本概念及操作

前言

Pandas是python的一個數據分析的函式庫,提供簡易使用的資料格式,使用者透過這項工具快速操作及分析資料,提供十分容易操作的資料結構如:DataFrame
Pandas不但可以網頁中的表格資料,還能從外部匯入資料,將這些資料進行排序、修改或是做成統計相關的圖表。

Read more

[Python] 爬蟲筆記3- Selenium

前言

Selenium 是一個瀏覽器自動化測試工具,最初是為了自動化測試開發,在爬蟲流行開始後,也成為其中一種爬蟲工具。它的功能可以控制瀏覽器,模擬人對瀏覽器操作,整個過程是自動化的。
selenium支援Java、JavaScript、Python等多種主流程式語言,本篇主要用Python實作。

安裝Selenium

1
pip install selenium

成功後,顯示Successfully installed selenium.

Read more

[Python] 爬蟲筆記2-requests&BeautifulSoup

前言

繼上篇筆記之後,本篇主要紀錄我常用的爬蟲工具:requestsBeautifulSoup這兩個模組。

所需先備知識-了解網站請求

向網站發請求時,GET與POST是常見的HTTP Method,爬蟲大多採用這兩種方法

安裝requests和bs4

1
2
pip install bs4
pip install requests

引入模組

1
2
import requests
from bs4 import BeautifulSoup
Read more

[Python] 爬蟲筆記1-基本概念

前言

這學期因為專題需要用到網路爬蟲進行實作,所以將學習到的知識做一篇紀錄,之後忘記可以回來複習一下。

什麼是爬蟲?

根據維基百科定義:

也叫網路蜘蛛(spider),是一種用來自動瀏覽全球資訊網的網路機器人。其目的一般為編纂網路索引。
網路搜尋引擎等站點通過爬蟲軟體更新自身的網站內容或其對其他網站的索引。網路爬蟲可以將自己所存取的頁面儲存下來,以便搜尋引擎事後生成索引供用戶搜尋。

簡單來說就是對網站進行資料擷取,可以透過它自動蒐集我們所想要的資料,將資料進行分析或是再利用,這樣的技術在資料科學領域算是幾乎需具備的技能。

Read more