1. 程式人生 > >python web後端,筆試面試題四

python web後端,筆試面試題四

本文參考自: 原文地址



1.以下不能建立一個字典的語句是?
A、dict={} 
B、dict2={3:5}
C、dict3={[1,2,3]:"uestc"}----答案
D、dict4={(1,2,3):"uestc"}


2.下列程式碼的執行結果是多少? 
class Person:
def __init__ (self):
pass
def getAge(self):
print __name__
p=Person()
p.getAge

A、Person
B、getAge
C、usr.lib.python.person 
D、__main__-----答案
E、Anexception is thrown
 
3.下列程式碼執行結果
a=['hello',[1,2,3]]
b=a[:]
a[0]='world'
a[1].append(4)
print(b)


# 列表 a中有兩個元素 'hello'(字串)和【1,2,3,4】 列表
# 列表 b拷貝了  列表 a ,列表b中也有兩個元素  'hello'(字串)和【1,2,3,4】 列表
# 現在 a,b 中 的元素 的記憶體地址 是一樣的
# 列表 a,b 是兩個 物件,這兩個 物件 的資料型別是 列表,有自己的  記憶體地址
# 列表中的 兩個元素 也是 物件  有自己的 資料型別,分別是 字串  和 列表 ,也就是自己的 記憶體地址
不可變資料:Number(數字)、String(字串)、Tuple(元組); 
可變資料:List(列表)、Dictionary(字典)、Set(集合)。
字串不可變,所以答案不是D
A、['hello',[1,2,3]] 
B、['hello',[1,2,3,4]] -----答案
C、['world',[1,2,3]]
D、['world',[1,2,3,4]]


二,判斷、填空 
 
4.已知x=3,那麼賦值語句x='abcedfg'是無法正常執行的?()
---可以執行


5.Python變數名區分大小寫,所以student和Student不是同一個變數。()



6.aList的值為[3,4,5,6,7,9,11,13,15,17],那麼切片aList[3:7]得到的值是______
[6, 7, 9, 11]


7.表示式list(map(str,[1,2,3]))的值為_____
['1', '2', '3']




三,簡述(口答)


8.什麼是lambda函式?它有什麼好處?
1. 不需要定義函式名稱(臨時函式)
2. 只做簡單運算,並返回值,沒有複雜的函式體


9.Django對資料查詢結果排序怎麼做,降序怎麼做,查詢大於某個欄位怎麼做?



10.下面這些是什麼意思:@classmethod,@staticmethod,@property?
類方法的實現方式
靜態方法的實現方式
@property裝飾器來建立只讀屬性,@property裝飾器會將方法轉換為相同名稱的只讀屬性。


11.簡單談下GIL


12.Python和多執行緒(multi-threading),這是個好主意碼?列舉一些讓Python程式碼以並行方式執行的方法,以及多程序中傳遞引數的方式.


13. MYSQL資料庫優化的思路
1.優化索引、SQL 語句、分析慢查詢;
2.設計表的時候嚴格根據資料庫的設計正規化來設計資料庫;
3.使用快取,把經常訪問到的資料而且不需要經常變化的資料放在快取中,能節約磁碟 IO
4.優化硬體;採用 SSD,使用磁碟佇列技術(RAID0,RAID1,RDID5)等
5.採用 MySQL 內部自帶的表分割槽技術,把資料分層不同的檔案,能夠提高磁碟的讀取效率; 6.垂直分表;把一些不經常讀的資料放在一張表裡,節約磁碟 I/O;
7.主從分離讀寫;採用主從複製把資料庫的讀操作和寫入操作分離開來;
8.分庫分表分機器(資料量特別大),主要的的原理就是資料路由;
9.選擇合適的表引擎,引數上的優化
10.進行架構級別的快取,靜態化和分散式;
11.不採用全文索引;
12.採用更快的儲存方式,例如 NoSQL 儲存經常訪問的資料**。


14. MYSQL鎖有幾種;死鎖是怎麼產生的;

15.Django本身提供了runserver,為什麼不能用來部署?


runserver方法是除錯 Django時經常用到的執行方式,它使用 Django自帶的
WSGI Server執行,主要在測試和開發中便用,並且 conserver開啟的方式也是單程序
uWSGI是一個Web伺服器,它實現了WSGI協議、uwsgi、http等協議。注意uwsgi是一種通訊協議,而WSGI是實現uwsgi協議和WSGI協議的Web伺服器。 WSGI具有超快的效能、低記憶體佔用和多app管理等優點,井且搭配著Nginx
就是一個生產環境了,能夠將使用者訪問請求與應用app隔離開,實現真正的部署,相比來講,支援的併發量更高,方使管理多程序,發揮多核的優勢,提升效能。


16.程序通訊的方式有幾種?
程序間通訊(IPC,InterProcess Communication)是指在不同程序之間傳播或交換資訊。
IPC的方式通常有管道(包括無名管道和命名管道)、訊息佇列、訊號量、共享儲存、Socket、Streams等。其中 Socket和Streams支援不同主機上的兩個程序IPC。


17. TCP UDP區別:三次握手四次揮手


UDP 是面向無連線的通訊協議,UDP 資料包括目的埠號和源埠號資訊。
優點:UDP 速度快、操作簡單、要求系統資源較少,由於通訊不需要連線,可以實現廣播發送
缺點:UDP 傳送資料前並不與對方建立連線,對接收到的資料也不傳送確認訊號,傳送端不知道數 據是否會正確接收,也不重複傳送,不可靠。


TCP 是面向連線的通訊協議,通過三次握手建立連線,通訊完成時四次揮手
優點:TCP 在資料傳遞時,有確認、視窗、重傳、阻塞等控制機制,能保證資料正確性,較為可靠。
缺點:TCP 相對於 UDP 速度慢一點,要求系統資源較多。




四,程式碼填(可以寫程式碼)
18.補充缺失的程式碼
def print directory contents(spath)
"""
這個函式接受資料夾的名稱作為輸入引數
返回該資料夾中檔案的路徑
以及其包含資料夾中檔案的路徑。
"""
補充程式碼
import os
import sys


def print_files(path):
    lsdir = os.listdir(path)
    dirs = [i for i in lsdir if os.path.isdir(os.path.join(path,i))]
    files = [i for i in lsdir if os.path.isfile(os.path.join(path,i))]
    if files:
        for f in files:
            print os.path.join(path,f)
    if dirs:
        for d in dirs:
            print_files(os.path.join(path,d))


print_files(sys.argv[1])


19.給定一個包含n個整數的陣列nums和一個目標值target,判斷nums中是否存在四個元素a,b,c和d,使得a+b+c+d的值與target相等?找出所有滿足條件且不重複的四元組
注意:答案中不可以包含重複的四元組。
示例
給定陣列nums=[1,0,-1,0,-2,2],和 target=0
滿足要求的四元組集合為
{[-1,0,0,1],
[-2,-1,1,2],
[2,0,0,2],
[-2,0,0,2]}
 
from itertools import combinations


def test(array,target):
    result=[]
    combins = [c for c in combinations(array,4)]
    for each_array in combins:
        if sum(each_array)==target:
            result.append(each_array)
            # continue
    return result
if __name__ == '__main__':
    res = test([1,0,0,-1,-2,2],0)
    print(res)

相關推薦

python web筆試試題

本文參考自: 原文地址 1.以下不能建立一個字典的語句是? A、dict={}  B、dict2={3:5} C、dict3={[1,2,3]:"uestc"}----答案 D、dict4={(1,2,3):"uestc"} 2.下列程式碼的執行結果是多少? 

python web筆試試題

Python筆試題 一、程式設計題,需考慮輸入合法性,時間和空間複雜度,注意:可以用標準庫函式或者自己知道的常用庫函式操作,如果不記得,需要自己寫原始程式碼實現,但必質保證是可以執行的 1.合併兩個有序的陣列,陣列都是非遞減的,合併後的陣列依然有序 方法一: def mer

Python web開發框架 Django 、Flask、Tornado

httpserver : 非阻塞 HTTP serverhttpclient : 非同步 HTTP client 用來和web 及 httpserver 協同工作auth :第三方認證的實現locale:針對本地化和翻譯的支援等等

python 常見面試題web

此貼持續更新,歡迎大家前來補充 目錄 1、.socket,udp,tcp 2、程序、協程、執行緒 3、多執行緒在web專案中的應用 4、 Python2中range 和xrange的區別? 5、深拷貝淺拷貝 6、celery  1、.socke

繼萬字諫言Python Web 怎麼學看這篇就夠了!

  1. 之前那篇「萬字諫言,給那些想學Python的人,建議收藏後細看!」得到很多後臺讀者的留言,表示想再來點,甚至說萬字系?你知道萬字有多少麼?不要槓我根本沒有萬字!不叫萬字你能看到這篇良心嘛! 那憋了3天了,今天放個web好了,相信很多讀者都有關注web開發,那我們

資料結構與演算法(1)連結串列基於Python解決幾個簡單的試題

最近頭一直很大,老闆不停地佈置各種任務,根本沒有時間幹自己的事情,真的好想鼓起勇氣和他說,我以後不想幹這個了,我文章也發了您就讓我安安穩穩混到畢業行不行啊……作為我們這些想要跨專業的人來說,其實很大的一個劣勢就是沒有經歷過一個計算機學科完整的培養,所以對計算機專業的一些很基本

Python基礎(81道題)試題做了完了就不用擔心入不了門

1、為什麼學習Python? 人生苦短....哈哈,自己想吧!!! 2、通過什麼途徑學習的Python? 官網、網上視訊、學習網站 有需要Python學習資料的小夥伴嗎?小編整理一套Python資料和PDF,感興趣者可以加小編Python學習群:943752371反正閒著也是閒著呢,

Python非同步IO的未來(從Web開發的角度)

那麼Zeromq怎麼樣 首先,它不是那種多功能的軟體: 它很難拓展(hack on)(使用了複雜的C++ Actor模型) 嵌入進一些程式的效果欠佳(也就是說它沒有使用好fork) 對故障切換(failover)和服務發現(service discovery)整合欠佳 對非冪等(non-

2018最新110道python真實面試筆試試題

1、一行程式碼實現1--100之和利用sum()函式求和2、如何在一個函式內部修改全域性變數利用global 修改全域性變數3、列出5個python標準庫os:提供了不少與作業系統相關聯的函式sys:   通常用於命令列引數re:   正則匹配math: 數學運算dateti

web前端筆試試題整理

1.position的屬性值: relative absolut fixed static  (sticky page center瀏覽器暫時不支援)3.常見的設計模式:單利模式,簡單的工廠模式,觀察者模式 介面卡模式  代理模式 橋接模式 外觀模式 訪問者模式 中介者模式4

學習Python一年基礎忘記了看看試題回憶回議Python試題No3

這邊有幾個面試題,好棒 第1題:你如何管理不同版本的程式碼? git,svn兩個都要說到,github,碼雲也要提及,面試官想要的就是版本管理工具,你只要選擇一個你熟悉的,瘋狂的說一通就可以了,最好說一下自己以前做過哪些開源的專案,放在上面,沒有,就另當別論了。 第2題:python中生成隨機整數、隨機小數、

Java筆試試題001

orm 困難 保存 spa tro ng- style max 信息 Java筆試面試題之中的一個 1、Struts1中actionform和action屬於MVC哪一層,為什麽? 解答:actionform和action屬於MVC的Model層,Action用

(java web方向)如何讓你的簡歷為你爭取到更多的面試機會,內容來自java web輕量級開發面試教程

java web輕量級開發面試教程 我們在做培訓時,會發現一個不合理的情況,一些程序員能力不錯,在公司裏也是技術牛人,但發出去的簡歷往往會石沈大海,沒有回復。對於剛畢業的大學生或工作年限在2年之內的程序員,這個情況會更嚴重。 這種情況下,其實不是你的能力有問題,而是簡歷篩選人(往往是人事

多線程筆試試題匯總

面試官 同步 線程同步 編程題 初始 線程與進程的區別 結束 選擇 殺毒 第一篇 多線程筆試面試題匯總 本文轉載於秒殺多線程系列,原博客地址:http://blog.csdn.net/morewindows/article/details/7392749 多

今日頭條2017工程師實習生筆試題 - 題解

進制 true 字符串 從右到左 試題 imp 最終 create head 今日頭條2017後端工程師實習生筆試題 最大映射 題意 給n(不超過50)個字符串,每個字符串(長度不超過12)由A-J的大寫字符組成。要求將每個字符映射為0-9,使得每個字符串可以看作一個整數(

java前端需要掌握到什麽程度?

Java後端 Java前端 後端最基本的我認為要掌握以下幾點:1、Java基本語法2、多線程3、各種經典數據結構的使用,List、Set、Map及其衍生類。4、經典的Spring MVC,沒得說了,現在做Tomcat Web項目基本上都是用它了。5、RESTful要了解6、現在國內業界,json用的比

Java基礎試題JavaWeb試題

dex 強制轉換 定義 容器 所有 賦值 之間 初始 strings java基礎面試題1、Java的基本類型(8個)每個基本類型所占位數與字節數byte 1字節 8位short 2字節 16位int 4字節 32位long 8字節 64位char 2字節 16位floa

Java程序員從阿裏、京東、美團面試回來這些試題你會嗎?

Java 程序員 分布式 微服務 後端 最近有很多朋友去目前主流的大型互聯網公司面試(阿裏巴巴、京東、美團、滴滴),面試回來之後會發給我一些面試題。有些朋友輕松過關,拿到offer,但是有一些是來詢問我答案的。 其實本來真的沒打算寫這篇文章,主要是自己得記憶力不是很好,不像一些記憶力強的人

java筆試試題總結

linix 日誌 面試 arr java json數據 size 冒泡 格式 字符串如何倒序輸出? StringBuffer,String,StringBulider區別? Map與Hashmap 的關系? HashSet與HashTable 的關系? Map裏如何放li

7年Java遊戲被淘汰辛酸史

ranch 也快 業務 原來 北京 慢慢 for oschina 回來 本人Java開發6年半不到7年的樣子。 英語專業,臨畢業跟著隔壁專業去培訓了四個月Java。 跟他們一起來了北京找工作,一找就是5個多月,面試100多家公司。最終還是隔壁專業的同學介紹到他們公司才就業了