python面試題 基礎篇

2022-10-10 02:48:07 字數 3778 閱讀 9202

1.python保留字有哪些?

序號保留字說明1

and邏輯與操作,用於表示式運算2as

用於轉換資料型別

3assert

用於判斷變數或條件表示式的結果

4async

用於啟用非同步操作

5await

用於非同步操作中等待協程返回

6break

中斷迴圈語句的執行

7class

定義類8

continue

繼續執行下一次迴圈

9def

定義函式或方法

10del

刪除變數或序列的值

11elif

條件語句,與 if、else 結合使用

12else

條件語句,與 if、else 結合使用;也可用於異常或迴圈語句

13except

包含捕獲異常後的處理**塊,與 try、finally 結合使用

14false

含義為「假」的邏輯值

15finally

包含捕獲異常後的始終要呼叫的**塊,與 try、except 結合使用

16for

迴圈語句

17from

用於匯入模組,與 import 結合使用

18global

用於在函式或其他區域性作用域中使用全域性變數

19if

條件語句,與 elif、else 結合使用

20import

匯入模組,與 from 結合使用

21in

判斷變數是否在序列中

22is

判斷變數是否為某個類的例項

23lambda

定義匿名函式

24none

表示乙個空物件或是乙個特殊的空值

25nonlocal

用於在函式或其他作用域中使用外層(非全域性)變數

26not

邏輯非操作,用於表示式運算

27or

邏輯或操作,用於表示式運算

28pass

空的類、方法或函式的佔位符

29raise

用於丟擲異常

30return

從函式返回計算結果

31true

含義為「真」的邏輯值

32try

測試執行可能出現異常的**,與 except, finally 結合使用

33while

迴圈語句

34with

簡化 python 的語句

35yield

從函式依次返回值

2.運算子is與==有什麼區別?

python中物件包含三種元素:id、type、value。其中,id是唯一標識,type標識物件型別,value則是物件的值。

is是用判斷a物件是否就是b物件,是用id來判斷的

a = [1,2,3]

b =a

b is

a輸出true

==用來判斷a物件的值是否和b物件相等

b ==a

true

b ==a[:]

b is

afalse

b ==a

true

3.如何刪除列表中重複元素?

這種方法,利用集合(set)中元素的不可重複性,在用sort進行排序

lis = ['a','a','b','c','c','b','d']

new_list = list(set(lis))

new_list.sort(key=lis.index)

print(new_list)

結果:['a', 'b', 'c', 'd']

4.如果求兩個列表的交集、差集、並集?

a = [1,2,3,4,5]

b = [2,4,5,6,7]#交集

result = [r for r in a if r in

b]print("

交集:"

,result)

#差集(在a中,不在b中)

result = [r for r in a if r not

inb]

print("

差集:"

,result)#並集

result =a

for r in

b:

if r not

inresult:

print("

並集:",result)

結果:交集: [2, 4, 5]

差集: [1, 3]

並集: [1, 2, 3, 4, 5, 6, 7]

5.列表的常用方法有哪些?

方法意義

l.index(v [, begin[, end]])

返回對應元素的索引下標, begin為開始索引,end為結束索引,當 value 不存在時觸發valueerror錯誤

l.insert(index, obj)

將某個元素插放到列表中指定的位置

l.count(x)

返回列表中元素的個數

l.remove(x)

從列表中刪除第一次出現在列表中的值

l.copy()

複製此列表(只複製一層,不會複製深層物件)

向列表中追加單個元素

l.extend(lst)

向列表追加另乙個列表

l.clear()

清空列表,等同於 l[:] =

l.sort(reverse=false)

將列表中的元素進行排序,預設順序按值的小到大的順序排列

l.reverse()

列表的反轉,用來改變原列表的先後順序

l.pop([index])

刪除索引對應的元素,如果不加索引,預設刪除最後元素,同時返回刪除元素的引用關係

6.怎麼去除字串左邊空格、右邊空格、首尾空格?

s = "

hello

"print("

去除左邊空格

",s.lstrip())

print("

去除右邊空格

",s.rstrip())

print("

去除首尾空格

",s.strip())

7.什麼是模組、怎麼匯入模組?

在python中,乙個.py檔案就是乙個模組。模組提高了**的可維護性,它可以被其他地方引用。乙個包含很多python檔案的資料夾是乙個包。乙個包可以包含模組和子資料夾。模組可以分為以下幾種:

1)內建模組:例如os、random、time

2)第三方模組:別人寫好的模組,可以拿來就用,但是需要用pip安裝。

3)自定義模組:程式設計人員自己封裝的模組。

如何匯入模組:

1)將整個模組匯入: import somemodule

2)從某個模組匯入某個函式:from somemodule import somefunction

3)從某個模組中匯入多個函式:from somemodule import 1func,2func,3func

4)將某個模組中的全部函式匯入:from somemodule import *

5)起別名匯入:import random as rd 

Python面試題 基礎篇

readlines 是把檔案的全部內容讀取到記憶體,並解析成乙個字串列表。xreadlines 返回乙個iter file 迭代器,在python2.3後已經不推薦這種表示方法了,直接使用for迴圈迭代檔案物件。python中物件包含三要素 id,type,value。其中id用來唯一標識乙個物件,...

面試題 C 基礎篇(補充)

1 定義乙個常量,可以很方便地進行引數的調整和修改。const物件一旦建立後其值不能被修改,所以const物件必須初始化。2 const 變數相對於巨集定義更安全。編譯器可以對const變數進行型別安全檢查,而對巨集定義只進行字元替換,沒有型別安全檢查,並且在字元替換時可能會產生意料不到的錯誤。3 ...

c c 面試題(程式設計基礎篇)

相同的是變數進行自增操作,區別在於i 返回自增前的值,i返回自增後的值 當i是內建型別時,由於編譯器的優化,會使得i 和 i效率相同 當i是自定義資料型別時,i 會建立臨時物件,因為有了新物件的構造和析構,所以 i的效率高於i 當變數是bool型別,使用 取反來判斷true,false較好,例如 i...