100 个基本 Python 面试问题第三部分(36-56)

简介: 100 个基本 Python 面试问题第三部分

Q-36: __ Name __ 在 Python 中有什么作用?


__name__是一个唯一的变量。由于 Python 不公开 main() 函数,因此当它的解释器开始运行脚本时,它首先执行缩进 0 级的代码。


要查看 main() 是否被调用,我们可以在 if 子句中使用 __name__ 变量与值“__main__”进行比较。


回到目录


Q-37:Python 中“end”的目的是什么?


Python 的 print() 函数总是在最后打印一个换行符。print() 函数接受一个称为“end”的可选参数。它的默认值为 ‘\n’。我们可以使用此参数使用我们选择的值更改打印语句中的结束字符。


# Example: Print a  instead of the new line in the end.
print("Let's learn" , end = ' ')  
print("Python") 
# Printing a dot in the end.
print("Learn to code from juejin" , end = '.')  
print("cn", end = ' ')
输出是:
Let's learn Python
Learn to code from juejin.cn

回到目录


Q-38:什么时候应该在 Python 中使用“break”?


Python 提供了一个 break 语句来退出循环。每当代码中出现中断时,程序的控制权立即从循环体中退出。


嵌套循环中的 break 语句导致控件退出内部迭代块。


回到目录


Q-39:Python 中的 pass 和 continue 有什么区别?


continue 语句使循环从下一次迭代开始。


相反,pass 语句指示什么都不做,其余代码照常执行。


回到目录


Q-40:len() 函数在 Python 中有什么作用?


在 Python 中,len() 是一个主要的字符串函数。它确定输入字符串的长度。


>>> some_string = 'juejin'

>>> len(some_string)


Q-41: chr() 函数在 Python 中有什么作用?


chr() 函数在 Python 3.2 中重新添加。在 3.0 版本中,它被删除了。


它返回表示 Unicode 代码点为整数的字符的字符串。


例如,chr(122) 返回字符串 ‘z’ 而 chr(1212) 返回字符串 ‘Ҽ’。


回到目录


Q-42:ord() 函数在 Python 中有什么作用?


Python 中的 ord(char) 接受一个大小为 1 的字符串,如果是 Unicode 类型对象,则返回一个表示字符的 Unicode 代码格式的整数,或者如果参数是 8 位字符串类型,则返回字节的值。


>>> ord("z")

122



Q-43:Python 中的 Rstrip() 是什么?


Python 提供了 rstrip() 方法,该方法可以复制字符串但从末尾省略空白字符。


rstrip() 根据参数值从右端转义字符,即一个字符串,提到要排除的字符组。


rstrip() 的签名是:


str.rstrip([char sequence/pre>


test_str = 'Programming    '

# 尾随空格被排除在外

print(test_str.rstrip())


Q-44:Python 中的空格是什么?


空格表示我们用于间距和分隔的字符。


它们具有“空”表示。在 Python 中,它可以是制表符或空格。


回到目录


Q-45:Python 中的 isalpha() 是什么?


Python 提供了这个内置的 isalpha() 函数来处理字符串。


如果字符串中的所有字符都是字母类型,则返回 True,否则返回 False。


回到目录


Q-46:你如何在 Python 中使用 split() 函数?


Python 的 split() 函数处理字符串,将一大块切成更小的块或子字符串。我们可以指定一个分隔符来开始拆分,或者它默认使用空格作为一个。


str = 'pdf csv json'

print(str.split(" "))

print(str.split())


输出:


['pdf', 'csv', 'json']

['pdf', 'csv', 'json']


回到目录


Q-47:Python 中的 join 方法有什么作用?


Python 提供了适用于字符串、列表和元组的 join() 方法。它将它们组合起来并返回一个统一的值。


回到目录


Q-48:Title() 方法在 Python 中有什么作用?


Python 提供了 title() 方法将每个单词中的第一个字母转换为大写格式,而其余的则转换为小写。


str = 'lEaRn pYtHoN'

print(str.title())


输出:


Learn Python


现在,查看一些通用的 Python 面试问题。


回到目录


Q-49:是什么让 CPython 与 Python 不同?


CPython 的核心是用 C 开发的。前缀“C”代表了这一事实。它运行一个解释器循环,用于将 Python-ish 代码翻译成 C 语言。


回到目录


Q-50:哪个包是最快的 Python 形式?


PyPy 提供最大的兼容性,同时利用 CPython 实现来提高其性能。


测试证实 PyPy 比 CPython 快近五倍。它目前支持 Python 2.7。


回到目录


Q-51:Python 语言中的 GIL 是什么?


Python 支持 GIL(全局解释器锁),它是一个互斥锁,用于保护对 Python 对象的访问,同步多个线程同时运行 Python 字节码。


回到目录


Q-52:Python 如何实现线程安全?


Python 确保对线程的安全访问。它使用 GIL 互斥锁来设置同步。如果线程在任何时候丢失 GIL 锁,那么您必须使代码线程安全。


例如,许多 Python 操作以原子方式执行,例如在列表上调用 sort() 方法。


回到目录


Q-53:Python 如何管理内存?


Python 在内部实现了一个堆管理器,它保存着它的所有对象和数据结构。


这个堆管理器为对象分配/取消分配堆空间。


回到目录


Q-54:Python 中的元组是什么?


元组是 Python 中不可变的集合类型数据结构。


它们类似于序列,就像列表一样。但是,元组和列表之间存在一些差异;前者不允许修改,而列表允许。


此外,元组使用括号括起来,但列表的语法中有方括号。


回到目录


Q-55:Python 编程中的字典是什么?


字典是一种数据结构,在 Python 中称为关联数组,用于存储对象的集合。


该集合是一组具有单个关联值的键。我们可以称它为哈希、映射或哈希映射,因为它在其他编程语言中被调用。


回到目录


Q-56:Python 中的 set 对象是什么?


集合是 Python 中的无序集合对象。它们存储唯一且不可变的对象。Python 的实现源自数学。


回到目录



目录
相关文章
|
6天前
|
API 数据库 数据安全/隐私保护
Flask框架在Python面试中的应用与实战
【4月更文挑战第18天】Django REST framework (DRF) 是用于构建Web API的强力工具,尤其适合Django应用。本文深入讨论DRF面试常见问题,包括视图、序列化、路由、权限控制、分页过滤排序及错误处理。同时,强调了易错点如序列化器验证、权限认证配置、API版本管理、性能优化和响应格式统一,并提供实战代码示例。了解这些知识点有助于在Python面试中展现优秀的Web服务开发能力。
22 1
|
4天前
|
前端开发 测试技术 C++
Python自动化测试面试:unittest、pytest与Selenium详解
【4月更文挑战第19天】本文聚焦Python自动化测试面试,重点讨论unittest、pytest和Selenium三大框架。unittest涉及断言、TestSuite和覆盖率报告;易错点包括测试代码冗余和异常处理。pytest涵盖fixtures、参数化测试和插件系统,要注意避免过度依赖unittest特性。Selenium的核心是WebDriver操作、等待策略和测试报告生成,强调智能等待和元素定位策略。掌握这些关键点将有助于提升面试表现。
18 0
|
4天前
|
数据采集 存储 JSON
Python爬虫面试:requests、BeautifulSoup与Scrapy详解
【4月更文挑战第19天】本文聚焦于Python爬虫面试中的核心库——requests、BeautifulSoup和Scrapy。讲解了它们的常见问题、易错点及应对策略。对于requests,强调了异常处理、代理设置和请求重试;BeautifulSoup部分提到选择器使用、动态内容处理和解析效率优化;而Scrapy则关注项目架构、数据存储和分布式爬虫。通过实例代码,帮助读者深化理解并提升面试表现。
13 0
|
6天前
|
SQL 中间件 API
Flask框架在Python面试中的应用与实战
【4月更文挑战第18天】**Flask是Python的轻量级Web框架,以其简洁API和强大扩展性受欢迎。本文深入探讨了面试中关于Flask的常见问题,包括路由、Jinja2模板、数据库操作、中间件和错误处理。同时,提到了易错点,如路由冲突、模板安全、SQL注入,以及请求上下文管理。通过实例代码展示了如何创建和管理数据库、使用表单以及处理请求。掌握这些知识将有助于在面试中展现Flask技能。**
12 1
Flask框架在Python面试中的应用与实战
|
7天前
|
数据可视化 Python
Python模型评估与选择:面试必备知识点
【4月更文挑战第17天】本文深入探讨了Python模型评估与选择在面试中的关键点,包括性能度量、过拟合与欠拟合识别、模型比较与选择、模型融合和偏差-方差权衡。强调了避免混淆评估指标、忽视模型验证和盲目追求高复杂度模型的常见错误,并提供相关代码示例,如交叉验证、网格搜索和超参数调优。通过理解这些概念和技巧,可在面试中展示出色的数据科学能力。
31 12
|
7天前
|
机器学习/深度学习 搜索推荐 Python
Python特征工程面试:从理论到实践
【4月更文挑战第17天】本文探讨了Python在数据科学面试中的特征工程,涵盖基础概念如特征选择和提取,实战技能如缺失值和异常值处理,以及特定场景应用。强调避免过度依赖单一方法,忽视数据分布和相关性,以及保持特征工程的可解释性。提供代码示例展示了处理缺失值、标准化、特征选择和异常值检测的基本操作。建议结合业务理解,灵活运用多种方法并注重模型解释性。
21 9
|
7天前
|
数据采集 机器学习/深度学习 数据挖掘
Python数据清洗与预处理面试题解析
【4月更文挑战第17天】本文介绍了Python数据清洗与预处理在面试中的常见问题,包括Pandas基础操作、异常值处理和特征工程。通过示例代码展示了数据读取、筛选、合并、分组统计、离群点检测、缺失值和重复值处理、特征缩放、编码、转换和降维。强调了易错点,如忽视数据质量检查、盲目处理数据、数据隐私保护、过度简化特征关系和忽视模型输入要求。掌握这些技能和策略将有助于在面试中脱颖而出。
23 8
|
7天前
|
缓存 自然语言处理 数据处理
Python自然语言处理面试:NLTK、SpaCy与Hugging Face库详解
【4月更文挑战第16天】本文介绍了Python NLP面试中NLTK、SpaCy和Hugging Face库的常见问题和易错点。通过示例代码展示了如何进行分词、词性标注、命名实体识别、相似度计算、依存关系分析、文本分类及预训练模型调用等任务。重点强调了理解库功能、预处理、模型选择、性能优化和模型解释性的重要性,帮助面试者提升NLP技术展示。
24 5
|
7天前
|
NoSQL MongoDB Redis
Python与NoSQL数据库(MongoDB、Redis等)面试问答
【4月更文挑战第16天】本文探讨了Python与NoSQL数据库(如MongoDB、Redis)在面试中的常见问题,包括连接与操作数据库、错误处理、高级特性和缓存策略。重点介绍了使用`pymongo`和`redis`库进行CRUD操作、异常捕获以及数据一致性管理。通过理解这些问题、易错点及避免策略,并结合代码示例,开发者能在面试中展现其技术实力和实践经验。
129 8
Python与NoSQL数据库(MongoDB、Redis等)面试问答
|
7天前
|
SQL 关系型数据库 MySQL
Python与MySQL数据库交互:面试实战
【4月更文挑战第16天】本文介绍了Python与MySQL交互的面试重点,包括使用`mysql-connector-python`或`pymysql`连接数据库、执行SQL查询、异常处理、防止SQL注入、事务管理和ORM框架。易错点包括忘记关闭连接、忽视异常处理、硬编码SQL、忽略事务及过度依赖低效查询。通过理解这些问题和提供策略,可提升面试表现。
27 6