Python程式設計師去面試,這幾個問題一定要能回答!

2021-09-28 16:55:04 字數 2119 閱讀 8344

面試題以基礎為主,去面試python工程師,這幾個基礎問題不能答錯

列表和元組是python中最常用的兩種資料結構,字典是第三種。

相同點:

1、都是序列

2、都可以儲存任何資料型別

3、可以通過索引訪問

使用方括號建立列表,而使用括號()建立元組。

列表是可變的,而元組是不可變的,這標誌著兩者之間的關鍵差異。

元組無法複製。 因為元組是不可變的,所以執行tuple(tuple_name)將返回自己

python將低開銷的較大的塊分配給元組,因為它們是不可變的。

列表則分配小記憶體塊。

與列表相比,元組的記憶體更小。 '

當你擁有大量元素時,元組比列表快。

列表的長度是可變的。

python中的序列索引可以是正也可以是負

如果是正索引,0是序列中的第乙個索引,1是第二個索引。

如果是負索引,-1是最後乙個索引,-2是倒數第二個索引。

lst=[11,22,33,44,55]
>>> lst[:]

[11, 22, 33, 44, 55]

>>> lst[:-1] # 注意這裡不能輸出55,因為切片操作都是左閉右開的

[11, 22, 33, 44]

>>> lst[::-1]

[55, 44, 33, 22, 11]

>>> lst[-1]

55

>>> lst[0]

11

用 random 包中的 shuffle() 函式來實現

import random

random.shuffle(你的列表)

# 舉個例子:

l1 = [1, 3, 5, 7]

random.shuffle(l1)

join() 函式可以將指定的字元新增到字串中

『1,2,3,4,5』
a=','.join('123456')

print(a)

print(type(a))

#1,2,3,4,5,6

#

split() 函式可以用指定的字元分割字串

[『1』, 『2』, 『3』, 『4』, 『5』]
a='1,2,3,4,5,6'.split(',')

print(a)

print(type(a))

#['1', '2', '3', '4', '5', '6']

#

1、strip():把頭和尾的空格去掉

2、lstrip():把左邊的空格去掉

3、rstrip():把右邊的空格去掉

4、replace('c1','c2'):把字串裡的c1替換成c2。故可以用replace(' ','')來去掉字串裡的所有空格

5、split():通過指定分隔符對字串進行切片,如果引數num 有指定值,則僅分隔 num 個子字串

6、re.split(r'\s+', 'a b c') # 使用正規表示式

在編寫**時只寫框架思路,具體實現還未編寫就可以用 pass 進行佔位,使程式不報錯,不會進行任何操作。

比如:

while false:

pass

pass通常用來建立乙個最簡單的類:

class myemptyclass:

pass

def readtxt(*args):

pass # to do list

in 是判斷是否包含

通過成員運算子『in』 和 『not in』,確認乙個值是否是另乙個值的成員。

is 是判斷記憶體位址

1、is 是判斷兩個識別符號是不是引用自乙個物件

2、is not 是判斷兩個識別符號是不是引用自不同物件

tops: in 的 not 在前,is 的 not 在後

幾個程式設計師面試題

開鎖 在一條長長的走廊上一次排列著100把鎖著的鎖頭,你從把這100把鎖全部開啟開始 第一遍 然後,你把所有序號是2的倍數的鎖頭再鎖上 第2遍 接下來,你依次找到所有序號是3的倍數的鎖頭前,如果它是開啟的,就把它鎖上,如果它是鎖上的,就把它開啟 我們把這稱為 切換鎖的狀態 第3遍 即繼續拿這樣在第n...

程式設計師面試的幾個要點

紮實的基礎知識 高質量的 清晰的思路 優化 的能力 優秀的綜合能力是程式設計技術面試的五大要點。找工作一直是乙個熱門話題。要想找到心儀的工作,難免需要經過多輪面試。程式設計面試是程式設計師面試過程中最為重要的乙個環節。如果能在程式設計面試的環節充分展示自己的能力,那麼拿到中意的 offer 就是水到...

程式設計師面試

1.內聯函式和巨集的差別 內聯函式要做引數型別檢查,這是內聯函式和巨集相比的優勢 2.指標和引用的區別 1 非空區別。乙個引用不能指向空值,必須指向乙個物件。指標可以為空。2 合法性區別。使用引用不用檢測其合法性,但指標必須先檢查是否合法。3 可修改區別。指標在初始化之後還可以修改其指向的內容,但是...