經典Python面試題之基礎80問 Python開發

來源:互聯網
上載者:User

標籤:Python開發   Python編程   Python自動化   Python面試   

1. 為什麼學習Python?

2. 通過什麼途徑學習的Python?

3. Python和Java、PHP、C、C#、C++等其他語言的對比?

4. 簡述解釋型和編譯型程式設計語言?

5. Python解譯器種類以及特點?

6. 位和位元組的關係?

7. b、B、KB、MB、GB 的關係?

8. 請至少列舉5個 PEP8 規範(越多越好)。

9. 通過代碼實現如下轉換:

二進位轉換成十進位:v = “0b1111011”?

十進位轉換成二進位:v = 18? 

八進位轉換成十進位:v = “011”? 

十進位轉換成八進位:v = 30? 

十六進位轉換成十進位:v = “0x12”? 

十進位轉換成十六進位:v = 87

10. 請編寫一個函數實現將IP地址轉換成一個整數。

如 10.3.9.12 轉換規則為:

        10            00001010

?         3            00000011?

         9            00001001

?        12            00001100?

再將以上二進位拼接起來計算十進位結果:00001010 00000011 00001001 00001100 = ?

11. python遞迴的最大層數?

12. 求結果:

    v1 = 1 or 3?

    v2 = 1 and 3?

    v3 = 0 and 2 and 1

?    v4 = 0 and 2 or 1

?    v5 = 0 and 2 or 1 or 4

?    v6 = 0 or Flase and 1

13. ascii、unicode、utf-8、gbk 區別?

14. 位元組碼和機器碼的區別?

15. 三元運算規則以及應用情境?

16. 列舉 Python2和Python3的區別?

17. 用一行代碼實現數值交換:

     ? a = 1

 ?     b = 2

18. Python3和Python2中 int 和 long的區別?

19. xrange和range的區別?

20. 檔案操作時:xreadlines和readlines的區別?

21. 列舉布爾值為False的常見值?

22. 字串、列表、元組、字典每個常用的5個方法?

23. lambda運算式格式以及應用情境?

24. pass的作用?

25. *arg和**kwarg作用

26. is和==的區別

27. 簡述Python的深淺拷貝以及應用情境?

28. Python記憶體回收機制?

29. Python的可變類型和不可變類型?

30. 求結果:

?   v = dict.fromkeys(['k1','k2'],[])? 

   v[‘k1’].append(666)

?   print(v)?

   v[‘k1’] = 777

?   print(v)

31. 求結果:

def num():

   return [lambda x:i*x for I in range(4)]

print([m(2) for m in num()])

32. 列舉常見的內建函數?

33. filter、map、reduce的作用?

34. 一行代碼實現9*9乘法表

35. 如何安裝第三方模組?以及用過哪些第三方模組?

36. 至少列舉8個常用模組都有那些?

37. re的match和search區別?

38. 什麼是正則的貪婪匹配?

39. 求結果:? a. [ i % 2 for i in range(10) ]? b. ( i % 2 for i in range(10) )

40. 求結果:? a. 1 or 2? b. 1 and 2? c. 1 < (2==2)? d. 1 < 2 == 2

41. def func(a,b=[]) 這種寫法有什麼坑?

42. 如何? “1,2,3” 變成 [‘1’,’2’,’3’] ?

43. 如何?[‘1’,’2’,’3’]變成[1,2,3] ?

44. 比較: a = [1,2,3] 和 b = [(1),(2),(3) ] 以及 b = [(1,),(2,),(3,) ] 的區別?

45. 如何用一行代碼產生[1,4,9,16,25,36,49,64,81,100] ?

46. 一行代碼實現刪除列表中重複的值 ?

47. 如何在函數中設定一個全域變數?

48. logging模組的作用?以及應用情境?

49. 請用代碼簡答實現stack 。

50. 常用字串格式化哪幾種?

51. 簡述 產生器、迭代器、可迭代對象 以及應用情境?

52. 用Python實現一個二分尋找的函數。

53. 談談你對閉包的理解?

54. os和sys模組的作用?

55. 如何產生一個隨機數?

56. 如何使用python刪除一個檔案?

57. 談談你對物件導向的理解?

58. Python物件導向中的繼承有什麼特點?

59. 物件導向深度優先和廣度優先是什嗎?

60. 物件導向中super的作用?

61. 是否使用過functools中的函數?其作用是什嗎?

62. 列舉物件導向中帶爽底線的特殊方法,如:__new__、__init__

63. 如何判斷是函數還是方法?

64. 靜態方法和類方法區別?

65. 列舉物件導向中的特殊成員以及應用情境

66. 1、2、3、4、5 能組成多少個互不相同且無重複的三位元

67. 什麼是反射?以及應用情境?

68. metaclass作用?以及應用情境?

69. 用盡量多的方法實現單例模式。

70. 裝飾器的寫法以及應用情境。

71. 異常處理寫法以及如何主動跑出異常(應用情境)

72. 什麼是物件導向的mro

73. isinstance作用以及應用情境?

74. 寫代碼並實現:

Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would

have exactly one solution, and you may not use the same element twice.

Example:?

          Given nums = [2, 7, 11, 15], target = 9,

           ?Because nums[0] + nums[1] = 2 + 7 = 9,?

           return [0, 1]

75. json序列化時,可以處理的資料類型有哪些?如何定製支援datetime類型?

76. json序列化時,預設遇到中文會轉換成unicode,如果想要保留中文怎麼辦?

77. 什麼是斷言?應用情境?

78. 有用過with statement嗎?它的好處是什嗎?

79. 使用代碼實現查看列舉目錄下的所有檔案。

80. 簡述 yield和yield from關鍵字。

老男孩教育Python全棧開發課程,幾經沉澱,杜絕紙上談兵,全企業真實案例結合理論授課,想深入的學習Python開發課程的朋友,可以關注下老男孩教育。



經典Python面試題之基礎80問 Python開發

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.