由於機器學習、計算機應用數學等課程的需要,最近正在自學python,希望我的學習筆記可以對你有所幫助。
我所使用的開發環境:ubuntu 14.04 lts + python 2.7.9 + ipython notebook
一、安裝與配置
我選擇使用anaconda python。它的官方說明是:「anaconda is a completely free python distribution (including for commercial use and redistribution). it includes over 195 of the most popular
python packages
2、安裝anaconda
執行以下語句安裝:
$: bash anaconda-2.2.0-linux-x86_64.sh
3、開啟ipython notebook
安裝完anaconda後,直接在終端輸入:
$: ipython notebook
4、設定遠端訪問
選擇使用ipython notebook的乙個原因是因為其遠端訪問功能十分強大。只需在本地終端輸入:
$: ipython notebook --ip='*' --matplotlib=inline
二、basics
python程式包括模組,語句、表示式和物件。模組包含語句,語句包含表示式,表示式建立並處理物件。
1、注釋。#後跟的是注釋內容
# note: this is a comment
2、數字。數字只有整數和浮點數兩種型別。
3、字串。一串字母、一串單詞等都是string。常用c/c++的人要注意,在python中不存在char資料型別。
(1)單引號和雙引號都可以引字串,兩個是完全相同的;
(2)三引號『』『或者"""可引多行字串,且三引號引用內容中可任意使用單引號和雙引號;
(3)string可以建立不可以改變。
(4)format()是乙個非常有用的方法。舉例:
name = fiona
age = 23
print ' is years old'.format(name,age)
輸出:
fiona is 23 years old
(5)轉義序列的使用與c/c++類似:
『 \ 』標註在句尾表示下一行與本行相連;
『 \n 』 表示換行;『 \\ 』表示' \ '自己。
s = ''' this is a \
long sentence.\n
this is a short one. \\'''
print s
輸出:
this is a long sentence.
this is a short one. \
(6)在python中有乙個raw string的概念,在raw string中的轉義符不被處理,使用方式是在string前加字首』r『rs = r'this is a raw string\n.'
輸出:this is a raw string\n.
4、識別符號命名。python中識別符號命名需要滿足以下三點:
(1)識別符號必須從字母開始,字母可以是來自ascii碼或者unicode碼的大小寫英文本母,也可以是下劃線'_';
(2)識別符號剩餘部分可由字母和數字組成;
(3)區分大小寫。myname和myname是不同的。
5、核心資料型別
物件例子
備註數字
1234,3.1415,999l,3+4j
字串不存在char型別
列表[1,[2,'three'],4]
沒有固定型別的約束
字典通過鍵值儲存物件
元組(1, 'spam', 4, 'u')
不可變的序列
檔案mayflies = open('egg', 'r')
其他型別
集合、型別、none、布林型
6、物件。
python是物件導向的,所有被處理的都被稱為物件。
7、邏輯行和物理行。
簡單理解,乙個邏輯行就是乙個完整的語句,乙個物理行就是ide中的一行。
盡可能將乙個完整的邏輯行寫在乙個邏輯行內,不要使用';'分割兩個邏輯行將其同時寫在同一行中。
8、縮排。在python中縮排很重要。
(1)一行開始處的縮排決定了這一行所處的模組。在python中不存在使用{}括起迴圈體或者模組,而是全靠縮排決定;
(2)錯誤的縮排會引起error。
i = 5
# error below! notice a single space at the start of the line
print 'value is ', i
print 'i repeat, the value is ', i
輸出:file "whitespace.py", line 5
print 'value is ', i
^indentationerror: unexpected indent
三、基本語法
1、if測試
if :
elif :
else :
2、while迴圈
while :
else:
break:跳出迴圈體;continue:跳到迴圈首行;pass:什麼都不做,佔位;else:迴圈正常結束後執行
3、for迴圈
for in :
if : break
if : continue
else:
四、常見問題要注意
1、不要忘記『:』,不要使用『;』;
2、dir函式可以顯示物件可用屬性的列表;python中還有help函式、html報表、標準手冊等幫助文件可以參考;
3、縮排很重要。空白行保留也很重要,在互動模式下可表示結束語句;
4、for迴圈速度通常比while迴圈速度快。
【參考資料】
1、a byte of python
2、《python高階(一)(二)(三)》博文來自rachel zhang
Python學習 學習筆記(一)
python是什麼?人們為和使用python python的缺點 如今誰在使用python 流行的p2p檔案分享系統bitjorrent是乙個python程式。eve online這款大型多人網路遊戲 massively multiplayer online game,mmog 廣泛地使用pytho...
python學習學習筆記一
1,python 是完全物件導向的語言。在python中一切都是物件,函式 模組 字串等都是物件。2,資料型別 數字,字串,列表,元組,字典 數字型 整型 浮點型 布林型 非零即真 複數型 int x float x 型別轉換 非數字型 字串 列表 元祖 字典 list 元祖 元祖轉列表 tuple...
Python學習筆記 一
python學習筆記 一 關鍵知識點 1 程式列印輸出使用print語句 2 使用print輸出字串時,字串內容不帶引號。而使用字串變數名輸出時,字串內容由引號括起來 3 在python 解析器中下劃線 表示最後乙個表示式的值 4 重定向輸出符合為 5 程式中需要輸入時,實用raw input 內建...