教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

傳智播客Python培訓專家:6個常見面試題

更新時間:2017年11月30日16時31分 來源:傳智播客 瀏覽次數(shù):

在面試中,有一定比例是字符串處理以及網(wǎng)絡編程那塊,當然了肯定還有些其他的問題,下面幫大家找了6道題目,接下來小試牛刀吧! 很簡單的哦。。

第1題:

Q:是否遇到過python的模塊間循環(huán)引用的問題,如何避免它?

A: 這是代碼結(jié)構(gòu)設計的問題,模塊依賴和類依賴

如果老是覺得碰到循環(huán)引用可能的原因有幾點:

1.可能是模塊的分界線劃錯地方了

2.可能是把應該在一起的東西硬拆開了

3.可能是某些職責放錯地方了

4.可能是應該抽象的東西沒抽象

總之微觀代碼規(guī)范可能并不能幫到太多,重要的是更宏觀的劃分模塊的經(jīng)驗技巧,推薦uml,腦圖,白板等等圖形化的工具先梳理清楚整個系統(tǒng)的總體結(jié)構(gòu)和職責分工

采取辦法,從設計模式上來規(guī)避這個問題,比如:

1. 使用 “__all__” 白名單開放接口

2. 盡量避免 import

第2題:

Q: Python中如何定義一個函數(shù)

A:

有2種方法:

第1種:

def func(arg, *args, **kwagrs): #普通函數(shù)

func_body

return

第2種:

lambda x: x **2 #匿名函數(shù)

第3題:

Q: 請寫出一段Python代碼實現(xiàn)刪除一個list里面的重復元素

A:

>>> L1 = [4,1,3,2,3,5,1]

>>> L2 = []

>>> [L2.append(i) for i in L1 if i not in L2]

>>> print L2

[4, 1, 3, 2, 5]

運行結(jié)果如下圖:

Python培訓

第4題:

Q: Python是如何進行內(nèi)存管理的

A: python內(nèi)部使用引用計數(shù),來保持追蹤內(nèi)存中的對象,Python內(nèi)部記錄了對象有多少個引用,即引用計數(shù),當對象被創(chuàng)建時就創(chuàng)建了一個引用計數(shù),當對象不再需要時,這個對象的引用計數(shù)為0時,它被垃圾回收。所有這些都是自動完成,不需要像C一樣,人工干預,從而提高了程序員的效率和程序的健壯性。

第5題:

Q: 寫一個簡單的Python socket編程

A: socket是用來進行網(wǎng)絡編程用的接口,網(wǎng)絡編程分為服務器端和客戶端

服務器端代碼如下:

import socket

sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

sock.bind(('localhost', 8001))

sock.listen(5)

while True:

conn, addr = sock.accept()

try:

conn.settimeout(5)

buff = conn.recv(1024)

if buff == '1':

conn.send('Hello, Client...')

else:

conn.send('Please, Go Out...')

except socket.timeout:

print 'Socket Time Out...'

finally:

conn.close()

客戶端代碼如下:

import socket

import time

sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

sock.connect(('localhost', 8001))

time.sleep(2)

sock.send('1')

print sock.recv(1024)

sock.close()

第6題:

Q:src = "security/afafsff/?ip=123.4.56.78&id=45",請寫一段代碼用正則匹配出IP

A:

import re

src = "security/afafsff/?ip=123.4.56.78&id=45"

m = re.search('ip=(\d{1,3}\.\d{1,3}\.\d{1,3}.\d{1,3})', src, re.S) # re.S 改變'.'的行為

print m.group(1)

# 輸出結(jié)果

>>>

123.4.56.78

運行結(jié)果如下:

Python培訓
0 分享到:
和我們在線交談!