介绍
Python 是一种通用的解释型编程语言。它可用于创建 Web 应用程序,并广泛用于人工智能。由于机器学习和深度学习模型的实现,它已成为数据科学家领域的需求语言。
因此,每个有抱负的数据科学家都必须具备良好的 Python 知识。
在这篇博客中,将讨论一些面试中与 Python 相关的常见问题,以帮助您更好地掌握该主题。
Python 面试题
问题一:解释列表和元组的区别。
列表是可以由非同质元素组成的容器。例如-
list1 = [1, 2, 3, 4, 'a', 'b']
元组可以由不同数据类型的元素组成,但本质上是不可变的,因此仅用于访问元素。例如——
元组 = (1, 2, 3, 4, 'a', 'b')
问题2:解释Python中模块和包的区别?
模块:包含 Python 代码的 .py 文件,是一个可执行文件。
包:它是模块的集合以及 _init_.py 文件,解释器使用该文件将其解释为一个包。
问题3:解释列表和数组的区别。
该列表可以包含多种数据类型的元素,即非同质元素。例如-List1 = [1, 2, 3, 4, 'a', 'b']
数组只能包含相同类型的元素,即同质元素。例如-
from array import *
array1 = array('i', [3, 2, 1])
for x in array1:
print(x)输出:
3
2
1其中“i”定义了数组将保存的值的类型,即无符号整数。
问题 4: Python 中的 private、protected 和 public 成员是什么?
私有成员:只能在类内访问的数据成员。它们是通过使用前缀双下划线“__”来声明的。受保护的成员:可以在类内和子类中访问的数据成员。它们是通过使用前缀单下划线“_”来声明的。
公共成员:可以从任何类访问的数据成员。
问题 5:解释 Python 中 self 的使用。
self用于引用类的当前实例,即 self 将属性与类绑定。
问题 6:用 Python 描述 _init_。
_init_ 就像类的构造函数一样,每当创建类的对象时都会调用它。目的是初始化所创建对象的属性。例如-
Class people:
def __init__(self, age)
self.age = age
p = people(27)问题 7:解释 python 中的切片。
slice() 函数用于获取序列的切片。它的语法是一个 slice(start, end, step)。例如-
s1 = "analytics"
x =slice(2,5)
print(s1[x])输出:
aly问题 8:解释 List 和 Dict 理解之间的区别。
创建列表的简洁方式称为列表推导。例如 - 假设代码是:
for i in range(5):
if i<10:
print(i)理解:
[i for i in range(5) if i < 10]在Dict comprehension中,需要用冒号和 for 分隔的两个表达式。例如-
lst1 = {1, 2, 3}
lst2 = {'a', 'b', 'c'}
dict1 = {x:y for (x,y) in zip(lst1, lst2)}
print(dict1)输出:
{1:'c',2:'b',3:'a'}问题 9:解释 lambda 在 Python 中的使用。
lambda 用于在 Python 中定义一个没有名称的函数。但是,它只能包含一个表达式。例如-
y = lambda x: x+ 5
print(y(5))输出:
10问题 10: split() 和 join() 有什么区别。
函数split()和join()彼此相反,其中 split() 用于使用指定的分隔符将字符串分解为字符串列表,而 join() 用于通过定义的分隔符连接字符串的元素。例如-
str1 = 'Analytics Vidhya'
print(str1.split(" "))
print("-".join(str1.split(" ")))输出:
['Analytics', 'Vidhya']
Analytics-Vidhya问题 11:在 Python 中创建一个数据框。
我们可以使用以下代码在 Python 中创建一个数据框:
import pandas as pd
data = [['a', 1], ['b', 2], ['c', 3]]
df = pd.DataFrame(data, columns=['NAME', 'Number'])
print(df)输出:
NAME Number
0 a 1
1 b 2
2 c 3问题 12:编写代码以在数据框中添加新列。
可以使用以下代码添加数据框中的新列:
age = [27, 34, 56]
df['age'] = age
print(df)输出:
NAME Number age
0 a 1 27
1 b 2 34
2 c 3 56问题 13:编写代码从数据框中删除一行。
可以使用以下代码删除上面创建的数据框中的“数字”列:
df.drop(['Number'], axis = 1)
要删除第 0行,我们可以这样做:
df.drop(0)问题 14:用 Python 读取 csv 数据。
我们可以使用命令读取 csv 文件:
import pandas as pd
Df1 = pd.read_csv(‘transport.csv’)问题 15: 在 Python 中编写一个代码片段来反转列表和数组。
Lst1 = [1, 2, 3, 4, 5]
lst2=[]
for i in lst1:
lst2.insert(0,i)
print(lst2)输出:
[5、4、3、2、1]问题 16:编写代码以在 Python 中查找数组的形状。
可以使用以下命令找到数组的形状:arr.shape
问题 17:解释 Python 中的 zip() 函数。
Zip() -接受两个可迭代对象并将它们组合成一个可迭代对象。
lst1 = [15, 14, 13, 12, 11, 10]
lst2 = [10, 11, 12, 13, 14, 15]
x= zip(lst1, lst2)
print(set(x))输出:
{(14, 11), (13, 12), (12, 13), (15, 10), (10, 15), (11, 14)}问题18:解释del和remove()的区别
Del - 它从指定的索引中删除项目。
Lst1 = [40, 30, 20, 10]
Del lst1[1]输出:
[40, 20, 10]Remove() -它从列表中删除第一个匹配的值。
Lst1 = [40, 30, 20, 10]
Lst1.remove(30)
Print(lst1)输出:
[40, 20, 10]问题19:解释strip()和lstrip()的用法。
Strip() -用于删除所有提到的前导和尾随字符。例如-
Str = “--analytics vidhya--“
Print(str.strip(‘-‘))输出:
analytics vidhyaLstrip() -用于删除所有提到的前导字符。
print(str.lstrip(‘-‘))输出:
Analytics vidhya--问题 20:解释 join() 的用法。
join()的功能是将序列的元素组合在一起。例如-
lst1 = ['4','3','2','1']
s1 = " "
s1 = s1.join(list1)
print(s1)输出:
4 3 2 1
结论
在这篇博客中,我们分享了一些关于 Python 的重要且常见的面试问题。以下是博客的要点:
1.我们了解Python中最常用的术语即列表、数组、元组等之间的区别。
2. 我们对 Dataframe 及其创建和操作方式有了基本的了解。
3、一些常用的函数如zip()、strip()、remove()等,已经讨论过了。
原文标题:20 Most Asked Interview Questions of Python
原文作者:Saumyab271
原文链接:https://www.analyticsvidhya.com/blog/2022/07/20-most-asked-interview-questions-of-python/




