热门Python面试问答
下面列出的是关于Python编程语言的最常见面试问题和答案。
让我们探索!!
#1)Python可以用于Web客户端和Web服务器端编程吗?哪一个最适合Python?
答案: Python由于具有创建业务逻辑,数据库交互,Web服务器托管等的大量功能,因此最适合Web服务器端应用程序开发。
但是,Python可以用作Web客户端应用程序,它需要浏览器进行一些转换才能解释客户端逻辑。另外,请注意,Python可用于创建可以作为独立应用程序运行的桌面应用程序,例如用于测试自动化的实用程序。
#2)与其他脚本语言(例如Javascript)相比,使用Python至少要带来3-4个好处。
答:下面列出了使用Python的一些好处。应用程序开发更快,更容易。
模块广泛支持各种类型的应用程序开发,包括数据分析/机器学习/数学密集型应用程序。
一个优秀的支持社区,可为您解答。
#3)说明列表,元组,集合和字典,并至少提供一个可以使用这些集合类型中的每一个的实例。
回答:列表:可以在运行时更改的不同数据类型的项目的集合。
元组:不能更改的不同数据类型的项目的集合。它仅具有对集合的只读访问权限。当您要保护数据收集集并且不需要任何修改时,可以使用此方法。
集合:相似数据类型的项目的集合。
字典:具有键值对的项目的集合。
通常,列表和字典被程序员广泛使用,因为它们都提供了数据收集的灵活性。
#4)Python是否允许您以结构化样式进行编程?
答:可以。它确实允许代码是结构化的以及面向对象的样式。它提供了出色的灵活性,可以根据您的应用程序需求来设计和实现您的应用程序代码。
#5)在Python世界中什么是PIP软件?
答:PIP是Python Installer Package的首字母缩写,它提供了一个无缝接口来安装各种Python模块。它是一个命令行工具,可以在Internet上搜索软件包并安装它们,而无需任何用户交互。
#6)基于Python的应用程序开发的典型构建环境应该是什么?
答:您只需要安装Python软件并使用PIP,就可以安装来自开源社区的各种Python模块。
对于IDE,强烈建议将Pycharm用于具有广泛支持插件的任何类型的应用程序开发。另一个基本的IDE称为RIDE,它是Python开放源代码社区的一部分。
#7)可以使用哪些工具对Python代码进行单元测试?
答:最好和最简单的方法是使用“ unittest” python标准库来测试单元/类。支持的功能与其他单元测试工具(例如JUnit,TestNG)非常相似。
#8)For循环和While循环在Python中有何不同?何时选择使用它们?
答:For循环通常用于遍历各种集合类型的元素,例如List,Tuple,Set和Dictionary。
While循环是任何其他编程语言中使用的实际循环功能。这就是Python在处理循环方面与其他编程语言的不同之处。
#9)如何在Python中定义数据类型以及整数和十进制数据类型保留多少字节?
答:在Python中,无需显式定义变量的数据类型。
根据分配给变量的值,Python存储适当的数据类型。对于整数,浮点数等数字,数据长度是无限的。
#10)如何在Python中使用数组?
答:Python不支持数组。但是,您可以使用List收集类型,该类型可以存储无限数量的元素。
#11)鉴于Python最适合服务器端应用程序,您如何实现JSON?
答:Python内置了处理JSON对象的支持。
您只需要导入JSON模块并使用诸如加载和转储之类的功能即可将JSON字符串转换为JSON对象,反之亦然。这是从服务器端处理和交换基于JSON的数据的直接方法。
#12)在Python中解析字符串和查找模式的最佳方法是什么?
答:Python内置支持使用正则表达式模块解析字符串。导入模块并使用函数查找子字符串,替换字符串的一部分等。
#13)Python支持哪些数据库?
答:MySQL(结构化)和MongoDB(非结构化)是Python本身支持的著名数据库。导入模块并开始使用功能与数据库进行交互。
#14)Python中_init_()函数的作用是什么?
答:这是在实例化类的对象时执行的第一个函数。这等效于C ++中的构造函数概念。
#15)对象方法中“ self”参数的意义是什么?我们是否应该始终将此参数命名为“ self”?
答:参数“ self”用于引用类的对象属性。
“ self”参数应该以类对象属性为前缀。问题第二部分的答案是“否”。“ self”参数可以有任何名称。
#16)Lambda函数与Python中的普通函数有何不同?
答:Lambda与C编程中的内联函数相似。它返回一个函数对象。它仅包含一个表达式,并且可以接受任意数量的参数。
如果是普通函数,则可以定义函数名称,传递参数并强制具有return语句。Lambda函数通常可用于简单操作,而无需使用函数名。也可以代替变量使用。
#17)如何在Python中完成异常处理?
答:共有3个主要关键字,即try,except和finally,它们用于捕获异常并相应地处理恢复机制。尝试是监视错误代码段。发生错误时,将执行块除外。
最后一个块的好处是尝试错误后执行代码。无论是否发生错误,都将执行此块。最后,块用于执行对象/变量的必需清除活动。
#18)Python代码执行的起点是什么?
答案:由于Python是解释器,因此它开始从源文件中读取代码并开始执行它们。
但是,如果要从主函数开始,则应在源文件中将以下特殊变量设置为:
if__name __ ==“ __main__
main()
#19)列出Python中可用的一些重要模块。
答:网络,数学,密码服务,Internet数据处理和多线程模块是重要的模块。除此之外,Python开发人员社区还提供了其他几个模块。
#20)Python的哪个模块可以用来衡量应用程序代码的性能?
答:时间模块可用于计算应用程序不同阶段的时间,并使用日志记录模块以任何首选格式将数据记录到文件系统中。
#21)如何在Python应用程序的主流程中启动子流程?
答:Python有一个称为子进程的内置模块。您可以导入此模块,并使用run()或Popen()函数调用来启动子进程并获得其返回代码的控制权。
#22)由于Python更适合服务器端应用程序,因此在服务器代码中实现线程非常重要。如何在Python中实现?
答:我们应该使用线程模块来实现,控制和销毁线程,以并行执行服务器代码。锁和信号量可用作同步对象,以管理不同线程之间的数据。
#23)我们是否需要调用显式方法来销毁Python中分配的内存?
答:垃圾回收是Python的一项内置功能,它负责分配和取消分配内存。这与Java中的功能非常相似。
因此,您的应用程序代码中发生内存泄漏的机会非常少。
#24)相同的Python代码是否可以在多个平台上运行而无需任何更改?
答:可以。只要您在目标平台(Linux,Windows,Mac)上具有Python环境,就可以运行相同的代码。
#25)如何使用Python创建基于GUI的应用程序以实现客户端功能?
答:Python和标准库Tkinter一起可用于创建基于GUI的应用程序。Tkinter库支持各种小部件,这些小部件可以创建和处理特定于小部件的事件。
问#26)Python识别哪些不同的环境变量?
回答:
PYTHONPATH:此环境变量可帮助解释器确定在程序中导入的模块文件的位置。
PYTHONSTARTUP:此环境变量包含包含源代码的初始化文件的路径。
PYTHONCASEOK:此变量用于在导入语句中查找第一个不区分大小写的匹配项
#27)什么是Python元组?它与列表有什么不同?
答案:元组基本上是由逗号分隔并括在括号中的元素序列。
列出,而是由逗号分隔并括在方括号中的一系列元素。同样,元组不能更新,而在列表中,元素及其大小可以更新。
#28)'#'符号在Python中有什么作用?
答案:“#”用于注释掉行后的所有内容。
例:print (“I am a beginner in Python”)
#print (“I am a beginner in Python”)
输出:
我是Python的初学者
#29)stringVar是什么。strip()吗?
答:这是删除前导/尾随空格的字符串方法之一。
#30)以下代码的输出应该是什么:a =“ pythontutorial”print('%。6s'%a)
答:输出应为:python
#31)编写命令以读取:
一种。文件中的“ 10”个字符
b。读取整个文件
c。一起执行两个命令后写输出。
文件名是“ softwaretestinghelp.txt”。
档案文字:
Python是Guido van Rossum创建的功能强大的高级,面向对象的编程语言。
它具有简单易用的语法,对于初次尝试学习计算机编程的人来说,它是理想的语言。
回答:f = open ("softwaretestinghelp.txt ", "r")
print (f. read (10))
print (f. read ())
输出:
python是由Guido van Rossum创建的功能强大的高级,面向对象的编程语言。
它具有简单易用的语法,对于初次尝试学习计算机编程的人来说,它是理想的语言。
#32)Python中的成员运算符是什么?写一个例子来解释两者。
答: Python中有两种类型的成员运算符:
in:如果在序列中找到该值,则结果为true,否则为false
不在:如果未在序列中找到该值,则结果为true,否则为false
例:a=15
b=30
list= [3,6,15,20,30];
if (ain list)
print “ais availablein givenlist”
else
print “ais not availablein givenlist”
if (bnot in list)
print “bis not availablein givenlist”
else
print “bis availablein givenlist”
输出:
在给定列表中可用
b可用是列表
#33)编写代码以显示当前时间。
回答:currenttime= time.localtime(time.time())
print (“当前时间是”, currenttime)
#34)如果str ='Python Language',print str [4:]的输出是什么?
回答:
输出:on Language
#35)编写命令以从字典中获取所有键。
答案: print dict.keys()
#36)在python中编写一个将字符串转换为int的命令。
答案: int(x [,base])
#37)python中的help()和dir()是什么?
答:help()是一个内置函数,可用于返回特定对象,方法,属性等的Python文档。
dir()显示作为参数传递的对象的属性列表。如果dir()不带参数,则它将返回当前本地空间中的名称列表。
#38)“Monkey Patching”在Python中是什么意思?
答:Monkey Patching是指在运行时修改模块。
#39)在Python中,“套房”是什么意思?
答:一组单独的语句,从而使逻辑代码块称为套件
例:
如果表达套件其他套件
#40)Python中的range()是什么?举例说明一下。
答:这是对数字序列进行迭代的功能。
例:for var in list(range (10))
Print (var)
41)abs()和fabs()有什么区别?
答:abs()是一个内置函数,它也可用于整数,浮点数和复数。
fabs()是在数学模块中定义的,不适用于复数。
Q#42)编写以下代码的输出:str = “Python is a programming language”
print (str.isalnum())
str = “This is Interview Question17”
print (str.isalnum())
Answer: False
True
# 43)什么是from import语句并为其编写语法?
答:From语句允许从当前名称空间中的模块导入特定属性。
语法:从modname导入name1 [,name2 [,…nameN]]
#44)locals()和globals()有什么区别?
答案:locals()是在函数内访问的,它返回可以从该函数本地访问的所有名称。
globals()返回可以从该函数全局访问的所有名称。
#45)Python中断言的用途是什么?
答:Assert语句用于评估附加的表达式。如果表达式为假,则python引发AssertionError Exception。
#46)Python中的“匹配”和“搜索”有什么区别?
答:Match在字符串的开头检查匹配项,而search在字符串的任何地方检查匹配项
#47)浅拷贝和深拷贝有什么区别?
答案:创建新实例类型时,将使用浅表复制,它会保留要复制的值,而深表复制则存储已复制的值。
浅表副本的程序执行速度较快,而深层副本的速度较慢。
#48)如果语法上需要该语句,但程序不需要采取任何措施,则在Python中使用什么语句?
答:通过声明
列:If(a>10)
print(“Python”)
else
pass
#49)PEP8是指什么?
答:PEP8是一种编码约定,它是有关如何使代码更具可读性的一组建议。
#50)什么是* args和* kwargs?
答:它们用于将可变数量的参数传递给函数。* args用于传递非关键字可变长度参数列表,而* kwargs用于传递关键字可变长度参数列表。你点的每个赞,我都认真当成了喜欢