1. 程式人生 > 實用技巧 >八道面試題解決輕鬆Python入職!

八道面試題解決輕鬆Python入職!

為什麼有些人明明技術一般,卻找到了較好工作,而你比他強得多為啥還是到處碰壁

今天阿喵教你八道面試題,要是還沒找到工作你來找我

第1題: 如何解決驗證碼的問題,用什麼模組,聽過哪些人工打碼平臺?

PIL、pytesser、tesseract模組

平臺的話有:(打碼平臺特殊,不保證時效性)

  • 雲打碼
  • 掙碼
  • 斐斐打碼
  • 若快打碼
  • 超級鷹

第2題: ip 被封了怎麼解決,自己做過 ip 池麼?

關於 ip 可以通過 ip 代理池來解決問題 ip 代理池相關的可以在 github 上搜索 ip proxy 自己選一個 去說github.com/awolfly9/IP…提供大體思路:

  1. 獲取器 通過 requests 的爬蟲爬取免費的 IP 代理網址獲取 IP。
  2. 過濾器通過獲取器獲取的代理請求網頁資料有資料返回的儲存進 Redis。
  3. 定時檢測器定時拿出一部分 Proxy 重新的用過濾器進行檢測剔除不能用的代理。
  4. 利用 Flask web 伺服器提供 API 方便提取 IP

第3題: 在 Python 中,list,tuple,dict,set 有什麼區別,主要應用在什麼場景?

區別

  • list:連結串列,有序的資料結構, 通過索引進行查詢,使用方括號”[]”;
  • tuple:元組,元組將多樣的物件集合到一起,不能修改,通過索引進行查詢, 使用括號”()”;
  • dict:字典,字典是一組鍵(key)和值(value)的組合,通過鍵(key)進行查詢,沒有順序, 使用大括號” {}”;
  • set:集合,無序,元素只出現一次, 自動去重,使用”set([])”

應用場景

  • list:簡單的資料集合,可以使用索引;
  • tuple:把一些資料當做一個整體去使用,不能修改;
  • dict:使用鍵值和值進行關聯的資料;
  • set:資料只出現一次,只關心資料是否出現, 不關心其位置。

這裡多說一句,小編是一名python開發工程師,這裡有我自己整理了一套最新的python系統學習教程,包括從基礎的python指令碼到web開發、爬蟲、資料分析、資料視覺化、機器學習等。想要這些資料的可以進裙609616831領取。

第4題: 請描述方法過載與方法重寫?

方法過載

是在一個類裡面,方法名字相同,而引數不同。返回型別可以相同也可以不同。 過載是讓類以統一的方式處理不同型別資料的一種手段。

方法重寫

子類不想原封不動地繼承父類的方法,而是想作一定的修改,這就需要採用方法的重寫。方法重寫又稱方法覆蓋。

第5題:是否瞭解執行緒的同步和非同步?

  • 執行緒同步:多個執行緒同時訪問同一資源,等待資源訪問結束,浪費時間,效率低
    • 例子:你說完,我再說。
  • 執行緒非同步:在訪問資源時在空閒等待時同時訪問其他資源,實現多執行緒機制
    • 你喊朋友吃飯,朋友說知道了,待會忙完去找你 ,你就去做別的了。

第6題:是否瞭解網路的同步和非同步?

  • 同步:提交請求->等待伺服器處理->處理完畢返回,這個期間客戶端瀏覽器不能幹任何事
  • 非同步: 請求通過事件觸發->伺服器處理(這是瀏覽器仍然可以作其他事情)->處理完畢

第7題:你是否瞭解MySQL資料庫的幾種引擎?

這個答案比較發散,可以重點說下面兩種

InnoDB

InnoDB是一個健壯的事務型儲存引擎,這種儲存引擎已經被很多網際網路公司使用,為使用者操作非常大的資料儲存提供了一個強大的解決方案。

在以下場合下,使用InnoDB是最理想的選擇:

  1. 更新密集的表。InnoDB儲存引擎特別適合處理多重併發的更新請求。
  2. 事務。InnoDB儲存引擎是支援事務的標準MySQL儲存引擎。
  3. 自動災難恢復。與其它儲存引擎不同,InnoDB表能夠自動從災難中恢復。
  4. 外來鍵約束。MySQL支援外來鍵的儲存引擎只有InnoDB
  5. 支援自動增加列AUTO_INCREMENT屬性。

一般來說,如果需要事務支援,並且有較高的併發讀取頻率,InnoDB是不錯的選擇。

MEMORY

使用MySQLMemory儲存引擎的出發點是速度。為得到最快的響應時間,採用的邏輯儲存介質是系統記憶體。 雖然在記憶體中儲存表資料確實會提供很高的效能,但當mysqld守護程序崩潰時,所有的Memory資料都會丟失。 獲得速度的同時也帶來了一些缺陷。  

一般在以下幾種情況下使用Memory儲存引擎:

  1. 目標資料較小,而且被非常頻繁地訪問。在記憶體中存放資料,所以會造成記憶體的使用,可以通過引數max_heap_table_size控制Memory表的大小,設定此引數,就可以限制Memory表的最大大小。
  2. 如果資料是臨時的,而且要求必須立即可用,那麼就可以存放在記憶體表中。
  3. 儲存在Memory表中的資料如果突然丟失,不會對應用服務產生實質的負面影響。

第8題:你是否進了阿喵的Python學習群

很多人學習python,不知道從何學起。
很多人學習python,掌握了基本語法過後,不知道在哪裡尋找案例上手。
很多已經做案例的人,卻不知道如何去學習更加高深的知識。
那麼針對這三類人,我給大家提供一個好的學習平臺,免費領取視訊教程,電子書籍,以及課程的原始碼!

QQ群:609616831

進群的小夥伴都能找到好工作哦