Python基礎-語法知識

——編程語言的發展史

  • 機器語言

    • 優勢:執行速度夠快
    • 缺點:開發效率很是低
  • 彙編語言

    • 優勢:執行效率相較於機器語言略低
    • 缺點:開發效率相較於機器語言略高
  • 高級語言

    • C、C++、C#、java、PHP、python、go都屬於高級語言
    • 編譯型:C、C++、PHP
    • 解釋性:C#、python、java(先編譯後解釋)
  • 開發效率

    • (解釋型 > 編譯型)> 彙編語言 > 機器語言
  • 執行效率

    • (解釋型 < 編譯型)< 彙編語言 < 機器語言
  • 跨平臺

    • 解釋型 > 編譯型

——python解釋器

  Python是一門跨平臺的腳本語言,Python規定了一個Python語法規則,實現了Python語法的解釋程序就成爲了Python的解釋器java

  • 版本

    • python 2.*
    • python 3.*
  • 種類

    • IPython:是基於CPython之上的一個交互式解釋器,也就是說,IPython只是在交互式上有所加強,可是執行python代碼的功能和CPython是徹底同樣的。
    • Jython:原名JPython;Java語言實現的Python。Jython能夠直接調用Java的各類函數庫。
    • PyPy:是python開發者爲了更好地Hack Python而用Python語言使用的Python解釋器。PyPy提供了JIT編譯器和沙盒功能,對Python代碼進行動態編譯,所以運行速度比Cpython還要快
    • IronPython:IronPython和Jython相似,只不過IronPython是運行在微軟.Net平臺上的python解釋器,能夠直接將Python代碼編譯成.Net的字節碼
  • 執行代碼的兩種方式

    • 交互式:cmd命令,編寫python代碼,即寫即執行。缺點:代碼易丟失
    • 命令行執行:編寫好python文件,cmd命令執行。
    • 注意:python文件的後綴名py沒有實際意義,是python程序員約定俗成的文件,表示該文件是python文件,實際上就是文本文件。
  • IDE工具—pycharm

    • 專門用於編寫python代碼的集成代碼工具
    • 優勢:提高開發效率
    • 缺點:比較佔用內存的資源

——註釋—代碼之母

  • 單行註釋用【#】表示,快捷鍵是:Ctrl鍵 + / 鍵。取消註釋也是Ctrl鍵 + / 鍵
# eg:
# 用於獲取全部關鍵字
for i in keyword.kwlist:
    print(i)
  • 多行註釋:用【'''…'''】或【"""…"""】表示,輸入三次單引號或三次雙引號(英文鍵盤下)均可以
'''
eg:
用於獲取全部關鍵字
'''
for i in keyword.kwlist:
    print(i)
或者
"""
eg:
用於獲取全部關鍵字
"""
for i in keyword.kwlist:
print(i)

——變量

  • :事物的莊客是能夠變化的;:描述事物的狀態
  • 變量用於存取事物的變化
  • 變量的使用
    • 變量名 = 變量值
# = 不是數學定義的等於,在這裏是指將10賦值給了變量num
num = 10
    • 變量的命名規範

    1. 只能由字母、數字、下劃線組成,必定不要使用中文
    2. 不能由數字開頭
    3. 區分大小寫
    • 變量的命名風格

    1. 駝峯體   eg:UserAge = 18
    2. 下劃線體(使用該種方式)      eg:user_age = 18
    • 變量的三大特性

    1. value(值)
    2. id(內存地址)
    3. type(數據類型)  
name = "dawn"
print(name)     # value,輸出的是name的值
print(id(name))     # id,輸出的是name的內存地址
print(type(name))   # type,輸出的是name的數據類型


#輸出結果    
dawn          # value,輸出的是name的值
2281405883504     # id,輸出的是name的內存地址
<class 'str'>     # type,輸出的是name的數據類型

——常量

  • python中是沒有常量
  • 根據實際須要,python程序員約定俗成,變量名中全部字母大寫的狀況下,默認爲常量。一般狀況,不可更改

——內存管理

  • 小整數池:

    整數在程序中的使用很是普遍,Python爲了優化速度,使用了小整數對象池, 避免爲整數頻繁申請和銷燬內存空間。python

    Python 對小整數池的定義是 [-5, 256], 這些整數對象是提早創建好的,不會被垃圾回收。程序員

    全部位於[-5, 256]這個範圍內的整數使用的都是同一個對象。編程

>>> a = 256
>>> b=256
>>> print(id(a))
140703921377520
>>> print(id(b))
140703921377520
>>> a = -6
>>> b = -6
>>> print(id(a))
1742149284848
>>> print(id(b))
1742119225520
>>> c = -5
>>> d = -5
>>> print(id(c))
140703921369168
>>> print(id(d))
140703921369168

——垃圾回收機制

  • 引用計數:當內存中的值引用計數爲0,垃圾回收機制就會自動清除
  • 標記清除:當應用程序將內存撐滿的時候,會自動中止,清除垃圾
  • 分代回收:在歷經屢次掃描的狀況下,都沒有被回收的變量,gc機制就會認爲,該變量是經常使用變量,gc對其掃描的頻率會下降。
相關文章
相關標籤/搜索