21、你最喜欢Python的哪个库?
在处理大量数据时,没有什么比Pandas(熊猫)更有帮助了,因为Pandas让操作和可视化数据变得轻而易举。
22、举出几个可变和不可变对象的例子?
①不可变意味着创建后不能修改状态。例如:int、float、bool、string和tuple。
②可变意味着可以在创建后修改状态。例如列表(list)、字典(dict)和集合(set)。
23、如何将一个数字四舍五入到小数点后三位?
使用round(value, decimal_places)函数。
a = 5.12345
round(a,3) #=> 5.123
24、如何分割一个列表?
分割语法使用3个参数,list[start:stop:step],其中step是返回元素的间隔。
a = [0,1,2,3,4,5,6,7,8,9]
print(a[:2]) #=> [0, 1]
print(a[8:]) #=> [8, 9]
print(a[2:8]) #=> [2, 3, 4, 5, 6, 7]
print(a[2:8:2]) #=> [2, 4, 6]
25、什么是pickling?
Pickling是Python中序列化和反序列化对象的常用方法。在下面的示例中,我们对一个字典列表进行序列化和反序列化。
import pickle
obj = [ {'id':1, 'name':'Stuffy'}, {'id':2, 'name': 'Fluffy'}]
with open('file.p', 'wb') as f:
pickle.dump(obj, f)
with open('file.p', 'rb') as f:
loaded_obj = pickle.load(f)
print(loaded_obj) #=> [{'id': 1, 'name': 'Stuffy'}, {'id': 2, 'name': 'Fluffy'}]
26、字典和JSON有什么区别?
①Dict是Python的一种数据类型,是经过索引但无序的键和值的集合。
②JSON只是一个遵循指定格式的字符串,用于传输数据。
27、你在python中使用了哪些ORM?
ORM(对象关系映射)将数据模型(通常在应用程序中)映射到数据库表,并简化了数据库事务。SQLAlchemy通常用于Flask的上下文中,而Django拥有自己的ORM。
28、any和all如何工作?
①Any接受一个序列,如果序列中的任何元素为true,则返回true。
②All只有当序列中的所有元素都为true时,才返回true。
a = [False, False, False]
b = [True, False, False]
c = [True, True, True]
print(any(a)) #=> False
print(any(b)) #=> True
print(any(c)) #=> True
print(all(a)) #=> False
print(all(b)) #=> False
print(all(c)) #=> True
29、字典和列表的查找速度哪个更快?
①在列表中查找一个值需要O(n)时间,因为需要遍历整个列表,直到找到值为止。
②在字典中查找一个值只需要O(1)时间,因为它是一个哈希表。
如果有很多值,这会造成很大的时间差异,因此通常建议使用字典来提高速度。但字典也有其他限制,比如需要唯一键。
30、模块(module)和包(package)有什么区别?
模块是可以一起导入的文件(或文件集合)。
import sklearn包是模块的目录。
from sklearn import cross_validation因此,包是模块,但并非所有模块都是包。
31、如何在Python中递增和递减一个整数?
可以使用“+=”和“-=”对整数进行递增和递减。
value = 5
value += 1
print(value) #=> 6
value -= 1
value -= 1
print(value) #=> 4
32、如何返回一个整数的二进制值?
使用bin函数。
bin(5) #=> '0b101'
33、如何从列表中删除重复的元素?
可以通过将一个列表先转化为集合,然后再转化回列表来完成。
a = [1,1,1,2,3]
a = list(set(a))
print(a) #=> [1, 2, 3]
34、如何检查一个值是不是在列表中存在?
使用“in”。
'a' in ['a','b','c'] #=> True
'a' in [1,2,3] #=> False
35、append和extend有什么区别?
Append将一个值添加到一个列表中,而extend将另一个列表的值添加到一个列表中。
a = [1,2,3]
b = [1,2,3]
a.append(6)
print(a) #=> [1, 2, 3, 6]
b.extend([4,5])
print(b) #=> [1, 2, 3, 4, 5]