PEPE規範及解釋型語言

今日做業1

1.python解釋器的種類及特色

  • CPython,由C語言開發的,使用最廣的解釋器java

  • IPython,基於cpython之上的一個交互式計時器,交互方式加強,功能和CPython同樣
  • pypy,目標是執行效率,對python代碼進行動態編譯,提升執行效率
  • JPython,運行在java上的解釋器,直接把python代碼編譯成java字節碼執行
  • IronPython,運行在微軟.NET平臺上的解釋器,把python編譯成.NET的字節碼python

2.PEP8規範

  • 縮進,4個空格縮進
  • 每行最大長度79,換行可使用反斜槓 最好使用圓括號。換行點要在操做符的後邊敲回車。
  • 不要在一句import中多個庫,好比import os, sys不推薦。
  • 操做符左右各加一個空格
  • 逗號、冒號、分號前不要加空格
  • 整體原則,錯誤的註釋不如沒有註釋。因此當一段代碼發生變化時,第一件事就是要修改註釋!
  • 模塊命名儘可能短小,使用所有小寫的方式,可使用下劃線

3.簡述解釋型語言和編譯型語言

編譯型語言, (先編譯打包,後執行)code

使用專門的編譯器,針對特定的平臺,將高級語言源代碼一次性的編譯成可被該平臺硬件執行的機器碼,幷包裝成該平臺所能識別的可執行性程序的格式orm

一次性的編譯成平臺相關的機器語言文件,運行時脫離開發環境,運行效率高對象

解釋型語言,(依賴解釋器, 提供相應的解釋器,就能夠運行源代碼 )內存

解釋型語言不須要事先編譯,其直接將源代碼解釋成機器碼並當即執行,因此只要某一平臺提供了相應的解釋器便可運行該程序 。開發

解釋型語言每次運行都須要將源代碼解釋稱機器碼並執行,效率較低字符串

四、bit、B、KB、MB、GB的關係

` 1TB=1024GB,
1GB=1024MB;
1MB=1024KB;
1KB=1024B;
1B=8bit`編譯器

五、列舉你所瞭解到python2和python3的區別

python2有int和long int類型,python3只有int類型string

python2的str就是python3的Unicode

python2的bytes就是python3的str

六、is和==的區別

== 是比較值是否相同

is 是比較id是否相同

七、一行代碼實現數值交換

a,b = b,a

八、列舉經常使用的字符串格式化的方式

  • %S
  • format
  • f-string

九、python垃圾回收機制

引用計數,當指向該內存的引用爲0時回收

標記清除,第一階段標記,第二階段清楚

分代清除, 爲了更合理的進行【標記-刪除】 ,代數越高的對象(存活越持久的對象),進行【標記-刪除】的時間間隔就越長

10:求結果(本身先想,想完在執行):

v1 = 1 or 3 1
v2 = 1 and 3    3
v3 = 0 and 2 and 1  0
v4 = 0 and 2 or 1   1
v5 = 0 and 2 or 1 or 4  1
v6 = 0 or Flase and 1

對python而言

其一, 在不加括號時候, and優先級大於or
其二, x or y 的值只多是x或y. x爲真就是x, x爲假就是y
第三, x and y 的值只多是x或y. x爲真就是y, x爲假就是x

例一: 對於, 1 or 5 and 4: 先算5 and 4, 5爲真, 值爲4. 再算1 or 4, 1 爲真,值爲1 對於, (1 or 5) and 4: 先算1 or 5, 1爲真, 值爲1. 再算1 and 4, 1爲真,值爲4

相關文章
相關標籤/搜索