Python的歷史
一門語言的興起和衰落都帶有歷史的影子,來看一看TIOBE發布的2019年編程語言排行榜。
編程語言排行榜
老大和老二依舊是JAVA和c,誰讓它們出生的早呢,你看java是1995年發布的,c是1972年發布的,其實結論不然,python發布的時間比java還要早,python發布的時間是1991。那么問題來了,誰是世界上最好的編程語言,在這里手動暫停,回到我們的python上。python發布了這么多年,一直不溫不火,甚至一直被后發布的java語言吊起來打,很大一部分原因是,java執行效率更高,python效率低。那為什么又火起來了,主要得益于人工智能,機器學習的興起,其實AI不是什么新鮮的概念,1997年,IBM的深藍計算機就戰勝了當時的國際象棋冠軍卡斯帕羅夫,此事一出,輿論嘩然,帶動了機器學習的潮流(那個時候還沒有機器學習的概念),但是慢慢的就淡下來了,主要還是由于計算機的算力,數學理論,數據收集處理等等問題沒有解決。回看現在,計算機的算力早已經不是限制,數據的收集處理已經越來越方便,又由于python獨特的語法,加上完善的社區,第三方庫,使python站在了風口上,用雷布斯的話說,只要站在風口上,豬都可以飛起來(況且python不是豬),本文以及后續文章主要介紹與機器學習相關的python語法。
學會使用help方法
python中有許許多多自帶的方法極大的方便了我們的使用,當我們不知道某一個方法怎么使用的時候,應該怎么辦?使用 help方法
使用help命令調出max方法說明
- 從With a single 開始是關于這個方法的作用說明
- → value 代表這個方法的返回值
- max([,key=func])在max方法中,中括號代表這個參數不是必須的
- max(*args) 在max方法中*號代表,可以輸入個數不確定的參數
我們使用help查看每一個官方自帶的方法時,都能看到關于這個方法詳細的說明,那么我們怎么為自己的方法創建這樣的說明呢?使用三引號,多寫注解,快樂你我他。
三引號的作用
python常用數據結構List和Tuples語法區別
list和tuples兩種數據結構最重要的區別是以下兩點
- 定義一個list使用語法 list_a = [] 定義一個tuples 使用語法 tuple_a = ()
- list中的數據定義完畢后可以后續修改,但是tuple中的數據一旦定義以后就不可以修改了(其實是可以修改的只是和原來不是同一個對象了)
list可以修改數據tuple不可以修改數據
List和Tuple常用方法
由于list和tuple中常用的方法大同小異,這里我主要介紹list中的方法,主要涉及到list中的增刪改查
list_city = ['beijing','shanghai','chongqing','guangzhou','shenzhen'] #獲取第一個數據 list_city[0] #獲取最后一個數據 第一種寫法 list_city[len(list_city)-1] #獲取最后一個數據 第二種寫法 list_city[-1] #獲取指定位置的數據,比如第二個到第四個 list_city[1:4] #已知數據獲取索引 list_city.index('shanghai') #判斷list中是否有相關數據 'shanxi' in list_city #為list增加一個數據 默認將數據增加至最后 list_city.Append('shanxin') #在指定位置增加數據 在shanghai前增加數據 # 增加前 數據情況['beijing', 'shanghai', 'chongqing', 'guangzhou', 'shenzhen', 'shanxin'] #list_city.insert(1,'chengdu') #增加后 數據情況['beijing',‘chengdu’ 'shanghai', 'chongqing', 'guangzhou', 'shenzhen', 'shanxin'] #刪除指定數據 list_city.remove('beijing')
總結
上文只是列舉了一些常用的方法,在實際解決問題的時候多多使用help指令,你會有新的發現。下文開始介紹python中的另外一個常見的數據結構字典,字典介紹完畢后,我們把list、tuple、字典、函數交叉在一起,感受一下python語言相對于java這些傳統語言的便利性,可玩性到底在哪里,下文見。