python筆試題彙總

2021-08-10 05:57:09 字數 2392 閱讀 5318

1、什麼是lambda函式?它有什麼好處?

lambda作為乙個表示式,定義了乙個匿名函式。lambda和普通的函式相比,就是省去了函式名稱而已,同時這樣的匿名函式,又不能共享在別的地方呼叫。

2、介紹一下except的用法和作用

try/except語句用來檢測try語句塊中的錯誤,從而讓except語句捕獲異常資訊並處理.

try :

《語句》 #執行別的**

except 《名字》:

《語句》 #如果在try部份引發了'name'異常

except 《名字》,《資料》:

《語句》 #如果引發了'name'異常,獲得附加的資料

else:

《語句》 #如果沒有異常發生

3、單引號,雙引號,三引號的區別

單引號,雙引號括字串,三引號用於自由換行。字串變數賦值,用單雙引號沒有關係,但是當字串中出現單引號時,單引號括起來內部單引號要用反斜槓轉義,雙引號括起來內部單引號不需要額外處理。

1. 單引號和雙引號用法都是一樣的,但是如果字串裡有相同的字元時要使用\進行轉義。

2. 三引號與他們不同之處:裡面是什麼內容輸出就是什麼內容

4、請解釋下gil

python**的執行由python 虛擬機器(也叫直譯器主迴圈,cpython版本)來控制,python 在設計之初就考慮到要在直譯器的主迴圈中,同時只有乙個執行緒在執行,即在任意時刻,只有乙個執行緒在直譯器中執行。對python 虛擬機器的訪問由全域性直譯器鎖(gil)來控制,正是這個鎖能保證同一時刻只有乙個執行緒在執行。

5、copy和deepcopy的區別

copy.copy 淺拷貝 只拷貝父物件,不會拷貝物件的內部的子物件。

copy.deepcopy 深拷貝 拷貝物件及其子物件

7、使用乙個裝飾器,檢視函式的執行時間,有什麼作用

1、在django中定義了兩個模型,書籍和作者,書籍有三個字段分別為:title,author,publish_time,作者有三個字段分別為:name,age,address。其中書籍和作者是多對多的關係,檢視一本書籍的所有作者和某個作者的全部書籍。

2、django的mtv代表什麼

m 代表模型(model):負責業務物件和資料庫的關係對映(orm)。

t 代表模板 (template):負責如何把頁面展示給使用者(html)。

v 代表檢視(view):負責業務邏輯,並在適當時候呼叫model和template。

3、簡述你使用的web框架是怎樣實現mvc模式的。

把資料訪問邏輯、業務邏輯和表現邏輯組合在一起的概念有時被稱為軟體架構的 model-view-controller (mvc)模式。 在這個模式中, model 代表資料訪問層,view 代表的是系統中選擇顯示什麼和怎麼顯示的部分,controller 指的是系統中根據使用者輸入並視需要訪問模型,以決定使用哪個檢視的那部分。

django 緊緊地遵循這種 mvc 模式,可以稱得上是一種 mvc 框架。 以下是 django 中 m、v 和 c 各自的含義:

m : 資料訪問部分,由django資料庫層處理。

v : 選擇顯示哪些資料要顯示以及怎樣顯示的部分,由檢視和模板處理。

c : 根據使用者輸入委派檢視的部分,由 django 框架根據 urlconf 設定,對給定 url 呼叫適當的 python 函式。

4、簡述你熟悉的orm框架的使用機制和實現原理。

1、請用python實現非阻塞socket通訊

2、請寫出一段python**實現刪除乙個list裡面的重複元素。

如果只是簡單的取出重複的元素可以如下操作

>>> a

[1, 5, 2, 1, 9, 1, 5, 10]

>>> set(a)

如果取出重複的元素之後還要保持原來的順序可以按照下面的方法

def

dedupe

(items):

seen = set()

for item in items:

if item not

in seen:

yield item

seen.add(item)

>>> a = [1, 5, 2, 1, 9, 1, 5, 10]

>>> list(dedupe(a))

[1, 5, 2, 9, 10]

筆試題彙總

對於t n a t n b c n k t 1 c 這樣的遞迴關係,有這樣的結論 if a b k t n o n logb a logb a b為底a的對數 if a b k t n o n k logn if a b k t n o n k a 25 b 5 k 2 a b k 故t n o n...

阿里筆試題20春招筆試題彙總 python版本

有一疊撲克牌,每張牌介於1和10之間 有四種出牌方法 單出1張 出2張對子 出五張順子,如12345 出三連對子,如112233 給10個數,表示1 10每種牌有幾張,問最少要多少次能出完 描述 給乙個數字n 1 n 1e9 代表集合中有n個人,現在每次選若干個人出來,然後把這若干個人裡面其中乙個置...

微軟筆試題 彙總

1.臨界變數critical section的概念 還有semaphore,thread類似的這些 程序進入臨界區的排程原則是 如果有若干程序要求進入空閒的臨界區,一次僅允許乙個程序進入。任何時候,處於臨界區內的程序不可多於乙個。如已有程序進入自己的臨界區,則其它所有試圖進入臨界區的程序必須等待。進...