-
【Python面試題】-iterable(可迭代對(duì)象)和iterator(迭代器)的區(qū)別?
可迭代對(duì)象(list,set,dict)可以重復(fù)迭代,只能使用for循環(huán);迭代器只能迭代一次,可以通過next或for進(jìn)行迭代。 ps:可迭代對(duì)象不能使用next函數(shù)調(diào)用但是可以使用for調(diào)用,而迭代器可以使用next,也可以使用for進(jìn)行調(diào)用。 ps:他倆最大的區(qū)別就是,可迭代對(duì)象可以無限迭代,而迭代器只能迭代一次(是個(gè)數(shù)據(jù)流的形式?。?。 判斷迭代器 : isinstance([], Iterator)。 判斷可迭代對(duì)象:??isinstance([], Iterable)。 【返回…
-
【Python面試題】簡(jiǎn)單談下GIL:
Global Interpreter Lock(全局解釋器鎖) Python代碼的執(zhí)行由Python 虛擬機(jī)(也叫解釋器主循環(huán),CPython版本)來控制,Python 在設(shè)計(jì)之初就考慮到要在解釋器的主循環(huán)中,同時(shí)只有一個(gè)線程在執(zhí)行,即在任意時(shí)刻,只有一個(gè)線程在解釋器中運(yùn)行。對(duì)Python 虛擬機(jī)的訪問由全局解釋器鎖(GIL)來控制,正是這個(gè)鎖能保證同一時(shí)刻只有一個(gè)線程在運(yùn)行。在多線程環(huán)境中,Python 虛擬機(jī)按以下方式執(zhí)行: 設(shè)置G…
-
【Python面試題】Python是怎樣管理內(nèi)存的?
Python的內(nèi)存管理是由私有heap空間管理的。所有的Python對(duì)象和數(shù)據(jù)結(jié)構(gòu)都在一個(gè)私有heap中。程序員沒有訪問該heap的權(quán)限,只有解釋器才能對(duì)它進(jìn)行操作。為Python的heap空間分配內(nèi)存是由Python的內(nèi)存管理模塊進(jìn)行的,其核心API會(huì)提供一些訪問該模塊的方法供程序員使用。Python有自帶的垃圾回收系統(tǒng),它回收并釋放沒有被使用的內(nèi)存,讓它們能夠被其他程序使用。 【返回原文】
-
【Python面試題】怎樣獲取字典中所有鍵的列表?
【Python面試題答案】: 使用 keys() 獲取字典中的所有鍵 >>> mydict={'a':1,'b':2,'c':3,'e':5}>>> mydict.keys()dict_keys(['a', 'b', 'c', 'e']) 【返回早報(bào)】
-
【Python面試題】在Python中如何使用多進(jìn)制數(shù)字?
【Python面試題答案】: 我們?cè)赑ython中,除十進(jìn)制外還可以使用二進(jìn)制、八進(jìn)制和十六進(jìn)制。二進(jìn)制數(shù)字由0和1組成,我們使用 0b 或 0B 前綴表示二進(jìn)制數(shù)。 >>> int(0b1010)10 使用bin()函數(shù)將一個(gè)數(shù)字轉(zhuǎn)換為它的二進(jìn)制形式。 >>> bin(0xf)‘0b1111’ 八進(jìn)制數(shù)由數(shù)字 0-7 組成,用前綴 0o 或 0O 表示 8 進(jìn)制數(shù)。 >>> oct(8)‘0o10’ 十六進(jìn)數(shù)由數(shù)字 0-15 組成,用前綴 0x 或者 0X 表示 16 進(jìn)制數(shù)。 >>> hex…
-
【Python面試題】請(qǐng)解釋一下Python中的位運(yùn)算符?
【Python面試題答案】: 該運(yùn)算符按二進(jìn)制位對(duì)值進(jìn)行操作。 與(&),按位與運(yùn)算符:參與運(yùn)算的兩個(gè)值,如果兩個(gè)相應(yīng)位都為1,則該位的結(jié)果為1,否則為0 >>> 0b110 & 0b0102 或(|),按位或運(yùn)算符:只要對(duì)應(yīng)的?個(gè)?進(jìn)位有?個(gè)為1時(shí),結(jié)果位就為1。 >>> 3|23 異或(^),按位異或運(yùn)算符:當(dāng)兩對(duì)應(yīng)的?進(jìn)位相異時(shí),結(jié)果為1 >>> 3^21 取反(~),按位取反運(yùn)算符:對(duì)數(shù)據(jù)的每個(gè)二進(jìn)制位取反,即把1變?yōu)椤?/p>
-
【Python開發(fā)面試題】列表和元組之間的區(qū)別是?
答:二者的主要區(qū)別是列表是可變的,而元組是不可變的。舉個(gè)例子,如下所示: mylist=[1,3,3] mylist[1]=2 mytuple=(1,3,3) mytuple[1]=2 Traceback (most recent call last): File "", line 1, in mytuple[1]=2 復(fù)制代碼 【點(diǎn)擊返回】
-
【Python面試題】解釋一下Python中的身份運(yùn)算符
【答案 】: 通過身份運(yùn)算符‘is’和‘is not’,我們可以確認(rèn)兩個(gè)值是否相同。 >>> 10 is '10'False >>> True is not FalseTrue 【返回早報(bào)】
-
【Python面試題】解釋一下Python中的成員運(yùn)算符?
【答案】: 通過成員運(yùn)算符‘in’和‘not in’,我們可以確認(rèn)一個(gè)值是否是另一個(gè)值的成員。 >>> 'me' in 'disappointment'True>>> 'us' not in 'disappointment'True 【返回早報(bào)】
-
【Python面試題】請(qǐng)解釋一下Python中的邏輯運(yùn)算符?
【答案】: Python中有3個(gè)邏輯運(yùn)算符: and, or, not。 >>> False and TrueFalse>>> 7<7 or TrueTrue>>> not 2==2False 【返回早報(bào)】