Python 學習筆記-初識python
1、 安裝python3
我用的python版本是最新的3.3.2,在官網可以下載到!
先查看電腦上是否安裝了python,在linux 和 mac Os 上會預裝python2,但windows上沒有,windows沒有預裝任何python的版本。
在windows下控制台鍵入:python
可以查看顯示的python資訊,查看詳細的python資訊,可以鍵入:python.exe -v
*如果電腦上沒有安裝任何python,可以在www.python.org上下載一個適合你的作業系統的python版本。最新版本的是python3.3.2
2、 Python都有什嗎?
Python安裝完畢後,它包含以下成員。
1. IDLE:python的整合式開發環境,它包含編輯器、調試工具、python shell以及python3的線上文檔集。
2. Python Module docs
3. Python line
4. Python 離線文檔(我這個最新版的沒有中文的,如果英文不好,建議下子老版本)
3、使用IDLE
IDLE 提供了大量特性,我們目前只需要熟悉一些必要的功能,就能很好的利用IDLE
1、 tab鍵完成:先鍵入一些代碼,然後按下tab鍵,IDLE會自動提供一些建議,協助你完成語句,能夠協助你找到你忘記的內建函數。
2、 回退代碼語句:按下alt + F,可以回退到IDLE中的之前輸入的代碼語句,按下alt + N 可以移至下一個代碼語句。
3、 編輯回退的代碼:一旦回退代碼語句,還可以進行編輯,並使用方向鍵切換語句,可以編輯之前的輸入的語句,甚至是跨行的代碼語句。
4、 調整IDLE喜好設定:允許按照你的愛好調整IDLE的預設行為。
4、 建立簡單的python列表
1、 在資料的兩邊加引號,講各行資料轉換為字元竄
2、 用逗號講清單項目下一項分割開。
3、 在列表的兩邊加上開始和結束的中括弧。
4、 使用賦值操作符講這個列表賦值一個標示符。
5、簡單列表的操作(append()、pop()、extend() 、remove()、insert()、len() )
>>> streamp = ["first","second","third","fouth","fifth"]
>>> print(streamp)
['first', 'second', 'third', 'fouth', 'fifth']
>>> print(len(streamp)) //求列表的長度
>>> print(streamp[2]) //求指定索引的列表元素
third
>>> streamp.pop() //提取一個列表元素
'fifth'
>>> print(streamp)
['first', 'second', 'third', 'fouth']
>>> streamp.append("HEello") //在列表的末尾添加一個元素
>>> print(streamp)
['first', 'second', 'third', 'fouth', 'HEello']
>>> streamp.extend(["eigth","tenth"]) //將列表與其他列錶鏈接,擴充列表
>>> print(streamp)
['first', 'second', 'third', 'fouth', 'HEello', 'eigth', 'tenth']
>>> streamp.remove("tenth") //移除列表中指定的元素
>>> print(streamp)
['first', 'second', 'third', 'fouth', 'HEello', 'eigth']
>>> streamp.insert(2,"ninth") //在指定列表位置插入一個元素
>>> print(streamp)
['first', 'second', 'ninth', 'third', 'fouth', 'HEello', 'eigth']
>>> movies = ["1","2","3",["4","5",["6","7","8"]]]
>>> print(movies)
['1', '2', '3', ['4', '5', ['6', '7', '8']]]
>>> for each_item in movies:
print(each_item)
1
2 //列表是一個集合,可以儲存任何類型,也可以儲存列表
3 //但出現一個問題,他只會列印第一層的資料。
['4', '5', ['6', '7', '8']] 。
for eachitem in movies:
if isinstance(eachitem,list):
for subeachitem in eachitem:
print(subeachitem,list)
else:
print(eachitem)
1
2
3
4 <class 'list'>
5 <class 'list'>
['6', '7', '8'] <class 'list'> //還是存在問題,不能完美的講所有的嵌套列表列印出來。
6、在python中建立自訂函數:
定義函數的格式:
def 函數名 (參數): //引入關鍵字def,參數表示可選的
函數程式碼群組
什麼時候需要函數?當你的代碼中出現多次重複或者形式一樣的代碼(功能一樣)的代碼時,你就需要考慮是否建立一個函數了。
>>> def print_vol (this_list): //定義一個遞迴函式處理深層嵌套的列表列印問題
for each_item in this_list:
if isinstance (each_item,list):
print_vol(each_item)
else:
print(each_item)
>>> print_vol(movies)
1
2
3
4
5
6
7
8 //通過定義函數,我們的代碼變得漂亮了,可讀性更高了。
*在聲明變數時,我們不必說明python的類型,因為python 變數標示符沒有類型
*列表中可以混合不同類型是的資料,因為python是一個高層集合。
*for迴圈是可以收縮的的,使用於任意大小的列表
*列表可以自由的伸縮,從這方面來說,列表是動態,但列表不是萬能的,它不能訪問一個不存在的資料項目,如果非要訪問,會返回一個indexError作為響應,此時就表示越界了。
*在python中,單引號和雙引號都可以建立字元竄,而且建立的字元竄沒有任何區別。但有一條規則,就是引號必須配套使用,不能在一個字元竄中使用混合的引號形式表示。如果要在字元竄中使用引號怎麼辦?你有兩個選擇,第一你可以使用逸出字元“\”,第二,你可以使用單引號(或者雙引號)引起這個字元竄。
*是否可以用任意的字元竄命名標示符?不行,python遵循其他程式設計語言一樣的規則,名字可以是以一個字母字元或者一個底線開頭,接下來可以包括任意個字元、數字、底線。而且不允許使用奇怪的字元,例如“%”
*python是否對大小寫敏感?是的,python屬于敏感型,區分大小寫字母,當標示符的大小寫錯誤時,會返回一個nameError的錯誤。
*如何查詢python中的BIF(build-in function)?在shell中鍵入dir(__builtins__)可以查看python提供的內建函數列表。如果想查看某個函數的功能,可以使用help(函數名)。
*python的遞迴是否會有深度呢?python3預設遞迴深度不能超過100