Python編程筆記(第一篇)Python基礎語法

1、python介紹

一、編程語言排行榜

TIOBE榜 TIOBE編程語言排行榜是編程語言流行趨勢的一個指標,每個月更新,這份排行榜排名基於互聯網有經驗的程序員、課程和第三方廠商的數量。java

二、python與其餘語言對比

  • JAVA 目前使用最普遍的編程語言,第一個跨平臺的語言, 在大型ERP軟件\安卓APP開發\大型網站開發領域使用普遍python

  • PHP 使用最普遍的WEB開發語言,很是適合中小型網站開發,學習成本較低,開發效率高程序員

  • C\C++ 學習成本高,學習週期長,偏系統底層、在開發硬件驅動、嵌入式、遊戲引擎開發等領域有廣發的應用。web

  • PYTHON 使用領域幾乎和JAVA同樣普遍,但開發效率要高於JAVA,且學習成本較低,在科學預算\數據分析\網站開發\爬蟲開發\雲計算\自動化運維\自動化測試等領域優點明顯shell

三、python的生態圈

  • WEB開發 比較火的python web框架,支持異步高併發的Tornado框架,短小精悍的flask、bottle。編程

  • 人工智能 python是對人工智能支持最好的語言。flask

  • 雲計算 目前最火的雲計算框架openstack。架構

  • 金融量化分析、自動化交易 python在金融分析、量化交易領域用的很是多。併發

  • 爬蟲 爬取網頁和數據框架

  • 自動化運維 運維必須掌握的語言

  • 科學計算NASA早在97年就開始用python作科學計算,以後有了Numpy\SciPy\Matplohib\Enthought librarys等庫,python愈來愈適合作科學運算和圖形處理。

  • 遊戲開發python也能夠作遊戲開發

四、語言發展史

機器語言---彙編語言---高級語言

五、高級語言分類

編譯類: 將程序源碼轉成目標代碼(機器語言),因此程序能夠脫離其語言環境獨立執行。程序執行效率高可是修改比較麻煩,只要修改源代碼,必須從新生成執行文件。

如C、C++、Delphi等

 

六、編譯型和解釋型的優缺點

解釋類:將源代碼實時的由解釋器翻譯成目標代碼(機器語言)進行執行,並且不能生成獨立的可執行的文件,程序運行不能脫離其解釋器。

如Python、Java、PHP、Ruby等語言。

編譯型優勢:

a、程序執行時,再也不須要源代碼不依賴語言環境,由於執行的是機器碼文件

b、執行速度快,由於你的程序代碼已經翻譯成了是計筲機能夠直接理解的機器語言。

缺點:

a、每次修改了源代碼,須要從新編譯,生成機器碼文件b、跨平臺性很差,不一樣操做系統,調用底層的機器指令不一樣,須要爲不一樣平臺生成不一樣的機器碼文件

解釋型

優勢:a、天生跨平臺,由於解釋器已經作好了對不一樣平臺的交互處理,用戶寫的源代碼不需再考慮平臺差別性,可謂,一份源代碼,全部平臺均可直接執行

b、隨時修改,馬上見效,改完源代碼後,直接運行看效果

缺點:

a、運行效率低,全部的代碼均兼通過解釋器邊解釋邊執行,速度比編譯型慢不少b、代碼是明文

七、各種程序語言總結:

機器語言:優勢是最底層,速度最快,缺點是最複雜,開發效率最低

彙編語言:優勢是比較底層,速度最快,缺點是複雜,開發效率最低

高級語言

編譯型語言執行速度快,不依賴語言環境,跨平臺效率差解釋型跨平臺好,一份代碼,處處使用,缺點是執行速度慢,依賴解釋器運行

八、python發展史

發明人Guido van Rossum

1989年聖誕節寫出來的,創造出一種C和shell之間的,功能全面,易學易用的可拓展的語言。

1991年第一個編譯器誕生,是用C語言寫成的。1999年正式支持web開發

1994年增長 lamba ,map,filter and reduce

2000年python2.0解釋器,加入內存回收機制,構成了如今的python語言架構的基礎。

2004年python2.4解釋器,同年目前最流行的的web框架Django誕生

2006年python2.5解釋器發佈

2008年python2.6解釋器發佈

2008年python3.0解釋器發佈

2010年 python2.7解釋器發佈

2009年python 3.1解釋器發佈

2011年python 3.2解釋器發佈

2012年python 3.3解釋器發佈

2014年python 3.4解釋器發佈

2014年11月宣佈對python2.7的支持到2020年,而且再也不開發python2.8用戶應該儘快使用python3.4及其以上版本。

2015年10月發佈python 3.5解釋器

2016年12月發佈python 3.6解釋器

九、python解釋器種類

Cpython:大多數人用的python解釋器,官網下載的也是Cpython

ironpython:即IronPython 是一種在 NET 和 Mono 上實現的 Python 語言。

Jpython:java語言寫的解釋器。

pypython:pypy是對python進行動態編譯一次,再次執行.

 

2、變量

一、變量

是表示一個數值或者狀態的,把程序運算的中間結果臨時存到內存裏,已備後面的代碼繼續調用。

二、變量定義的規則

只能是字母、數字、下劃線的任意組合

變量名的第一個字符不能是數字

三、關鍵字不能聲明爲變量名

keyword.kwlist = ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

四、變量命名的習慣

a、駝峯體

age0of0nicholas = 18

b、下劃線

age_of_nicholas = 18

五、low的變量命名方式

變量名爲中文

變量名過長

變量名詞不達意

六、常量

常量即不變的量,在python中沒有一個專門的語法表明常量,程序員約定俗成用變量所有大寫表明常量

PI = 3.14

七、註釋

代碼註釋用#

代碼註釋原則:不用所有加註釋,只須要在本身以爲重要或者很差理解的部分加註釋便可,註釋能夠是中文或者英文,但絕對不要用拼音

3、數據類型

一、整型

整型即整數,在python3中再也不有長整型long,只有int

二、字符串

在python中加了引號的字符都被認爲是字符串,單引號和雙引號沒有任何區別

單雙引號的配合使用

msg = "I'm 18 years old !"

多行字符串能夠用三引號

msg = '''my
name
is
nicholas
'''

  

三、字符串的拼接

字符串的拼接能夠用+

字符串能夠用乘法

name = "nicholas"
v = name *10
print(v)

  

這裏會輸出10個nicholas

注意字符串的拼接只能是雙方都是字符串,不能是數字或者其餘類型

四、布爾類型

True /False

五、if-else語句

見博客[Python之路(第一篇):Python簡介和基礎]

六、while循環

見博客[Python之路(第一篇):Python簡介和基礎]

七、continue、break

continue 結束當前循環,繼續下一次循環

break 結束整個循環,執行循環體外面的語句

八、while -else語句

與其餘語言不一樣,python中還有while-else語句

while後面的else語句做用是,當while循環正常執行完,中間沒有被break語句停止的話,就會執行else後面的語句,若是被停止,則else也不會被執行。

例子

count = 0
  while count <= 5:
      count += 1
      print("loop",count)
  else:
      print("循環正常執行完啦")
  print("-------out of while loop--------")

  

輸出結果

loop 1
loop 2
loop 3
loop 4
loop 5
loop 6
循環正常執行完啦
-------out of while loop--------

  

 

分析:這裏是先執行完while語句以後再次執行了else語句

例子2

 
count = 0
  while count <= 5:
      count += 1
      print("loop",count)
      break
  else:
      print("循環正常執行完啦")
  print("-------out of while loop--------")

  

輸出結果

loop 1
-------out of while loop--------

  

分析:這裏在while 語句中被break後,else中的語句也沒有執行。

 

 

九、for -else語句

for-else與while-else相似,for循環正常執行完,中間沒有被break語句停止的話,就會執行else後面的語句,若是被停止,則else也不會被執行。注意這裏若是for循環語句中有return也會有break相似的效果

例子

 
li = [1,2,3,4,5]
  def find():
      for i in li:
          if i == 5:
              print("找到5了")
              return "ok"
      else:
          print("沒有找到")
          return "no"
  print(find())

  

輸出結果

找到5了
  ok

  

分析:這裏for循環語句裏if條件成立打印"找到5了",return出「ok」,以後會直接結束程序,不會繼續執行else語句。

例子2

 
li = [1,2,3,4]
  def find():
      for i in li:
          if i == 5:
              print("找到5了")
              return "ok"
      else:
          print("沒有找到")
          return "no"
  print(find())

  

輸出結果

 
沒有找到
  no

  

分析:這裏for循環內if語句沒有符合條件,return語句未能被執行到,因此for循環語句執行完以後執行了else語句。這裏return的功能和break相似,即若是for循環被break或者return打斷執行過程,那麼後面的else語句也不會被執行,若是for循環沒被打斷則執行else語句。

相關文章
相關標籤/搜索