Python(1):入門
安裝:
在linux中一般都自帶有python2.7的版本,如果想升級python到最新的版本可以參考其他部落格(http://www.cnblogs.com/lanxuezaipiao/archive/2012/10/21/2732864.html)。
這裡需要注意的是如果沒有升級python到最新版本,那麼直接在終端輸入 python 開啟的將是自帶的2.7版本。下載了新版本的python(假設為3.5)之後,會發現直接輸入python命令會報錯誤。
此時有兩個選擇,一個是使用python3命令來開啟python控制檯;一個是修改python的預設指向:
sudo rm -f /usr/bin/python
sudo ln -s /usr/bin/python3.5 /usr/bin/python
這樣設定了之後,就可以直接使用python命令來開啟python控制檯了。但此時可能還會出現問題,比如ubuntu下,會發現所有apt-get install相關的命令都失敗,檢視原因會發現有python相關的編譯錯誤。網上找了好多辦法都沒解決,最終採用的是先將python命令連結還原到老版本的python,執行完apt-get install命令之後,在將連結改回來即可。至於還原到老版本的python命令這裡就不再給出,只需把第二行命令中的python3.5改成老版本的即可。
python指令碼的編寫:
python指令碼的編寫大致上來說和java的程式碼編寫沒有太大差別。唯一的差別可能有以下兩點需要注意:
1. 在python中可以省略語句末尾的分號;
2. 在python中程式碼使用分層機制,子層相對於父層必須進行縮排(四個空格),且開啟子層之前父層必須以冒號(:)結尾。大致看下來python的程式碼如下:

def print_list(movies): if isinstance(movies, list): for movie in movies: print_list(movie) else: print(movies)
demo
python註釋:
python中的單行註釋直接使用”#”即可,對於多行註釋使用三引號:
””” 這是一個多行註釋
丫
”””
列表:
在python中可以說是一切皆列表。列表可以看做是java中的陣列,但又不像是陣列。列表中可以混合儲存多種資料型別的元素,且長度不固定,但是如果訪問列表元素的時候出現越界也會丟擲異常(IndexError)。列表的常見操作如下:

1 movies = ["movie1", "movie2"] 2 # 列表中可以巢狀列表,這裡執行完後,列表中的第一個元素就是一個列表 3 movies.insert(0, ["movie00", "movie01"]) 4 movies.remove("movie1") # 刪除列表元素 5 6 # 列表迴圈 7 for movie in movies: 8 print(movie) 9 10 i = 0 11 while i < len(movies): # len方法得到陣列長度 12 print(movies[i]) 13 i = i + 1 # python不支援例如 i++這種自加的操作
ListOperation
另外往列表末尾新增元素的函式主要有extend和append下面程式碼給出幾個列子,可以很直觀的看出二者的區別:

1 movies = [] 2 movies.append("movie1") 3 print(movies) # [`movie1`] 4 movies.extend(`movie2`) 5 print(movies) # [`movie1`, `m`, `o`, `v`, `i`, `e`,`2`] 6 movies.append([`movie3`]) 7 print(movies) # [`movie1`, `m`, `o`, `v`, `i`, `e`,`2`, [`movie3`]] 8 movies.extend([`movie4`]) 9 print(movies) # [`movie1`, `m`, `o`, `v`, `i`, `e`,`2`, [`movie3`], `movie4`]
AppendExtend
python中的字串既可以用單引號,也可以用雙引號,對於特殊字元,仍然使用””進行轉義。變數名區分大小。
上面我們看到諸如len、print等這些都屬於python的內建函式(BIF:built in functions)。我們可以通過dir(__builtins__)來檢視所有的內建函式。要檢視內建函式具體說明使用help(內建函式名)即可。
假設我們要將上一段程式碼中的列表元素列印出來,且對於巢狀的列表也需要單獨列印出其元素。那麼我們可能需要用到函式。判斷一個元素是否是列表型別,可以用內建函式isinstantce。
例如:isinstantce(movie, list) 來判斷movie是否是列表。我們定義一個列印列表的函式如下:

1 def print_list(movies): 2 if isinstance(movies, list): # 判斷元素是否是列表型別 3 for movie in movies: 4 print_list(movie) # 如果是列表型別,對元素遞迴呼叫列印列表 5 else: 6 print(movies) 7
print_list
定義完函式之後,我們可以直接通過 print_list(movies)來輸出列表。
黎明前最黑暗,成功前最絕望!
相關文章
- python入門筆記1Python筆記
- Python系列之-1、Django入門PythonDjango
- Python 影像處理 OpenCV (1):入門PythonOpenCV
- Python 入門系列 —— 1. 簡介Python
- Python-SQLAlchemy:第1節:SQLAlchemy入門PythonSQL
- Python 基礎 4-1 字典入門Python
- [Python GUI]Python內建圖形介面tkinter--入門1PythonGUI
- Python入門Python
- Python爬蟲入門【1】: CentOS環境安裝Python爬蟲CentOS
- flask入門1Flask
- 1、Spring入門Spring
- docker入門1Docker
- 1、MyCat入門
- Python gRPC 入門PythonRPC
- Python入門(案例)Python
- Python快速入門Python
- Pygame - Python 遊戲程式設計入門 class1GAMPython遊戲程式設計
- Python入門難嗎?如何順利入門Python學習?Python
- 1. SpringBoot 入門Spring Boot
- Docker入門(1):概述Docker
- Kafka入門(1):概述Kafka
- (1)入門MasaFramework教程Framework
- Android新手入門1Android
- Python入門必知的知識點!Python基礎入門Python
- Python 3 快速入門 1 —— 資料型別與變數Python資料型別變數
- 『python入門:』 python的介紹Python
- Python入門細節Python
- Python入門-函式Python函式
- Python 股票分析入門Python
- 說下Python入門Python
- Python入門筆記Python筆記
- Python入門之一Python
- python 入門常識Python
- python入門導學Python
- Python入門(九):集合Python
- Python 入門筆記Python筆記
- 如何快速入門PythonPython
- Python爬蟲入門Python爬蟲
- Pygame第1-1課:入門GAM