Python工程师面试题 与Python基础语法相关


Posted in Python onJanuary 14, 2016

希望通过本文能够帮助大家顺顺利利通过Python面试,之后还有一篇关于Python Web相关的文章欢迎大家阅读。

1、Python中pass语句的作用是什么?
pass语句什么也不做,一般作为占位符或者创建占位程序,pass语句不会执行任何操作。

2、Python是如何进行类型转换的?
Python提供了将变量或值从一种类型转换成另一种类型的内置函数。比如int函数能够将符合数学格式数字型字符串转换成整数。否则,返回错误信息。

3、Python是如何进行内存管理的?
Python引用了一个内存池(memory pool)机制,即Pymalloc机制(malloc:n.分配内存),用于管理对小块内存的申请和释放。

4、dict 的 items() 方法与 iteritems() 方法的不同?
items方法将所有的字典以列表方式返回,其中项在返回时没有特殊的顺序;
iteritems方法有相似的作用,但是返回一个迭代器对象
5、什么是lambda函数?它有什么好处?
编程中提到的 lambda 表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数。
Python允许你定义一种单行的小函数。定义lambda函数的形式如下:labmda 参数:表达式lambda函数默认返回表达式的值。你也可以将其赋值给一个变量。lambda函数可以接受任意个参数,包括可选参数,但是表达式只有一个。
6、说明os,sys模块不同,并列举常用的模块方法?
官方解释:
os: This module provides a portable way of usingoperating system dependent functionality.
翻译:提供一种方便的使用操作系统函数的方法。
sys:This module provides access to some variablesused or maintained by the interpreter and to functions that interact stronglywith the interpreter.
翻译:提供访问由解释器使用或维护的变量和在与解释器交互使用到的函数。
os 常用方法

os.remove()删除文件 
os.rename()重命名文件 
os.walk()生成目录树下的所有文件名 
os.chdir()改变目录 
os.mkdir/makedirs创建目录/多层目录 
os.rmdir/removedirs删除目录/多层目录 
os.listdir()列出指定目录的文件 
os.getcwd()取得当前工作目录 
os.chmod()改变目录权限 
os.path.basename()去掉目录路径,返回文件名 
os.path.dirname()去掉文件名,返回目录路径 
os.path.join()将分离的各部分组合成一个路径名 
os.path.split()返回(dirname(),basename())元组 
os.path.splitext()(返回filename,extension)元组 
os.path.getatime\ctime\mtime分别返回最近访问、创建、修改时间 
os.path.getsize()返回文件大小 
os.path.exists()是否存在 
os.path.isabs()是否为绝对路径 
os.path.isdir()是否为目录 
os.path.isfile()是否为文件

sys 常用方法

sys.argv      命令行参数List,第一个元素是程序本身路径  
sys.modules.keys() 返回所有已经导入的模块列表  
sys.exc_info()   获取当前正在处理的异常类,exc_type、exc_value、exc_traceback当前处理的异常详细信息  
sys.exit(n)    退出程序,正常退出时exit(0)  
sys.hexversion   获取Python解释程序的版本值,16进制格式如:0x020403F0  
sys.version    获取Python解释程序的版本信息  
sys.maxint     最大的Int值  
sys.maxunicode   最大的Unicode值  
sys.modules    返回系统导入的模块字段,key是模块名,value是模块  
sys.path      返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值  
sys.platform    返回操作系统平台名称  
sys.stdout     标准输出 
sys.stdin     标准输入 
sys.stderr     错误输出 
sys.exc_clear()  用来清除当前线程所出现的当前的或最近的错误信息 
sys.exec_prefix  返回平台独立的python文件安装的位置 
sys.byteorder   本地字节规则的指示器,big-endian平台的值是'big',little-endian平台的值是'little' 
sys.copyright   记录python版权相关的东西 
sys.api_version  解释器的C的API版本 
sys.version_info  
sys.argv      命令行参数List,第一个元素是程序本身路径  
sys.modules.keys() 返回所有已经导入的模块列表  
sys.exc_info()   获取当前正在处理的异常类,exc_type、exc_value、exc_traceback当前处理的异常详细信息  
sys.exit(n)    退出程序,正常退出时exit(0)  
sys.hexversion   获取Python解释程序的版本值,16进制格式如:0x020403F0  
sys.version    获取Python解释程序的版本信息  
sys.maxint     最大的Int值  
sys.maxunicode   最大的Unicode值  
sys.modules    返回系统导入的模块字段,key是模块名,value是模块  
sys.path      返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值  
sys.platform    返回操作系统平台名称  
sys.stdout     标准输出 
sys.stdin     标准输入 
sys.stderr     错误输出 
sys.exc_clear()  用来清除当前线程所出现的当前的或最近的错误信息 
sys.exec_prefix  返回平台独立的python文件安装的位置 
sys.byteorder   本地字节规则的指示器,big-endian平台的值是'big',little-endian平台的值是'little' 
sys.copyright   记录python版权相关的东西 
sys.api_version  解释器的C的API版本 
sys.version_info

7、Python里面如何拷贝一个对象?deepcopy 和 copy的区别?
copy 仅拷贝对象本身,而不拷贝对象中引用的其它对象。
deepcopy 除拷贝对象本身,而且拷贝对象中引用的其它对象。
8、os.path和sys.path的区别?
os.path是module,包含了各种处理长文件名(路径名)的函数。
sys.path是由目录名构成的列表,Python 从中查找扩展模块( Python 源模块, 编译模块,或者二进制扩展). 启动 Python 时,这个列表从根据内建规则,PYTHONPATH 环境变量的内容, 以及注册表( Windows 系统)等进行初始化.
9、re模块中match和search方法的不同?
match() 函数只检查 RE 是否在字符串开始处匹配,而search() 则是扫描整个字符串。
10、解释生成器(generator)与函数的不同,并实现和使用简单generator?
生成器和函数的主要区别在于函数 return avalue,生成器 yield a value同时标记或记忆point of the yield 以便于在下次调用时从标记点恢复执行。 yield 使函数转换成生成器,而生成器反过来又返回迭代器。

只有这10个还远远不够,大家还要学习Python的深入知识,才能从面试中脱颖而出。

Python 相关文章推荐
python制作爬虫并将抓取结果保存到excel中
Apr 06 Python
Python深入06——python的内存管理详解
Dec 07 Python
Python内建函数之raw_input()与input()代码解析
Oct 26 Python
浅谈numpy库的常用基本操作方法
Jan 09 Python
Python数据可视化之画图
Jan 15 Python
Python自动化运维之Ansible定义主机与组规则操作详解
Jun 13 Python
Pytorch实现GoogLeNet的方法
Aug 18 Python
Django配置文件代码说明
Dec 04 Python
使用 Python 写一个简易的抽奖程序
Dec 08 Python
15行Python代码实现免费发送手机短信推送消息功能
Feb 27 Python
python代数式括号有效性检验示例代码
Oct 04 Python
PyCharm 光标变成黑块的解决方式
Feb 06 Python
5种Python单例模式的实现方式
Jan 14 #Python
Python2.x与Python3.x的区别
Jan 14 #Python
python Django模板的使用方法
Jan 14 #Python
Python数据类型学习笔记
Jan 13 #Python
python基础入门学习笔记(Python环境搭建)
Jan 13 #Python
详解python时间模块中的datetime模块
Jan 13 #Python
Python时间模块datetime、time、calendar的使用方法
Jan 13 #Python
You might like
神族 PROTOSS 概述
2020/03/14 星际争霸
详解PHP显示MySQL数据的三种方法
2008/06/05 PHP
PHP使用php-resque库配合Redis实现MQ消息队列的教程
2016/06/29 PHP
关于ThinkPHP中的异常处理详解
2018/05/11 PHP
PHP大文件切割上传功能实例分析
2019/07/01 PHP
jQuery Ajax 全解析
2009/02/08 Javascript
ejs v9 javascript模板系统
2012/03/21 Javascript
JS获取当前网址、主机地址项目根路径
2013/11/19 Javascript
js几秒以后倒计时跳转示例
2013/12/26 Javascript
JS动态添加iframe的代码
2015/09/14 Javascript
基于Jquery和html5的7款个性化地图插件
2015/11/17 Javascript
C#微信小程序服务端获取用户解密信息实例代码
2017/03/10 Javascript
基于JavaScript实现无限加载瀑布流
2017/07/21 Javascript
vue中eventbus被多次触发以及踩过的坑
2017/12/02 Javascript
JS文件中加载jquery.js的实例代码
2018/05/05 jQuery
实例讲解vue源码架构
2019/01/24 Javascript
使用vue完成微信公众号网页小记(推荐)
2019/04/28 Javascript
mapboxgl区划标签避让不遮盖实现的代码详解
2020/07/01 Javascript
[03:09]DOTA2亚洲邀请赛 LGD战队出场宣传片
2015/02/07 DOTA
python数据结构树和二叉树简介
2014/04/29 Python
Python数据类型之Set集合实例详解
2019/05/07 Python
python删除列表元素的三种方法(remove,pop,del)
2019/07/22 Python
解决Keras使用GPU资源耗尽的问题
2020/06/22 Python
Python unittest discover批量执行代码实例
2020/09/08 Python
HTML5 canvas基本绘图之图形变换
2016/06/27 HTML / CSS
加拿大最大的体育用品、鞋类和服装零售商:Sport Chek
2018/11/29 全球购物
Street One瑞士:德国现代时装公司
2019/10/09 全球购物
读书活动总结范文
2014/04/26 职场文书
党员查摆问题及整改措施
2014/10/10 职场文书
幼儿园重阳节活动总结
2015/05/05 职场文书
一篇合格的广告文案,其主要目的是什么?
2019/07/12 职场文书
小学五年级(说明文3篇)
2019/08/13 职场文书
详解mysql三值逻辑与NULL
2021/05/19 MySQL
python中os.path.join()函数实例用法
2021/05/26 Python
python中取整数的几种方法
2021/11/07 Python
Ruby处理YAML和json数据
2022/04/18 Ruby