一、python基础面试题

1.Python的特点

  • Python是一种解释性语言【开发过程中没有了编译这个环节,类似于PHP或者Perl语言】
  • Python是交互式语言【可以在一个Python提示符,直接互动执行程序】
  • Python是面向对象语言【Python支持面向对象的风格或代码封装在对象的编程技术】
  • Python是初学者的语言【Python对于初级程序员而言,是一种伟大的语言,他支持广泛的应用程序开发,从简单的文字处理到浏览器再到游戏】
  • Python是跨平台的【它可以运行在Windows、Mac os或者Linux系统上,也就是说,在Windows上书写的Python程序,在Linux上也是可以运行的,类似于Java】

2.Python优缺点

优点:

  • 易于学习【Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单】

  • 易于阅读【Python代码定义的更清晰】

  • 易于维护【Python的成功在于它的源代码是相当容易维护的】

  • 一个广泛的标准库【Python的最大优势之一是丰富的库,跨平台的,在nuix、weindows和mac os上的兼容性很好】

  • 互动模式【互动模式的支持,可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片段】

  • 可移植性【基于其开发源代码的特性,Python已经被移植到许多平台】

  • 可扩展性【如果需要一段运行很快的关键代码,或者想要编写一些不愿开发的算法,可以使用C或者C++完成那部分程序,然后从你的Python程序中调用】

  • 数据库【Python提供所有主要的商业数据库的接口】

  • GUI编程(图形化界面)【Python支持GUI可以创建和移植到许多系统调用】

  • 可嵌入性【可以将Python嵌入到C或者C++程序,让你程序的用户获得“脚本化”的能力】

    点:

  • 运行速度慢【和C程序相比非常慢,因为Python是解释型语言,代码在执行时会一行一行的翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢,而C程序是运行前直接编译成CPU能执行的机器码,所以非常快】

  • 代码不能加密【如果要发布Python程序,实际上就是发布源代码,这一点跟C语言不通,C语言不用发布源代码,只需要把编译后的机器码(就是windows上常见的xxx.exe)发布出去,要从机器码反推出C代码是不可能的,所以,凡是编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去】

3.Python应用场景

  • Web开发【通过mod_wsgi模块,Apache可以运行用Python编写的Web程序。Python定义了WSGI标准应用接口来协调Http服务器与基于Python的Web程序之间的通信。一些Web框架,如Django,TurboGears,web2py,Zope等,可以让程序员轻松地开发和管理复杂的Web程序】

  • 操作系统管理、服务器运维的自动化脚本【在很多操作系统里,Python是标准的系统组件。 大多数Linux发行版以及NetBSD、OpenBSD和Mac OS X都集成了Python,可以在终端下直接运行Python。Python编写的系统管理脚本在可读性、性能、代码重用度、扩展性几方面都优于普通的shell脚本】

  • 网络爬虫【Python有大量的HTTP请求处理库和HTML解析库,并且有成熟高效的爬虫框架Scrapy和分布式解决方案scrapy-redis,在爬虫的应用方面非常广泛】

  • 科学计算(数据分析)【NumPy、SciPy、Pandas、Matplotlib可以让Python程序员编写科学计算程序】

  • 桌面软件【PyQt、PySide、wxPython、PyGTK是Python快速开发桌面应用程序的利器】

  • 服务器软件(网络软件)【Python对于各种网络协议的支持很完善,因此经常被用于编写服务器软件、网络爬虫。第三方库Twisted支持异步网络编程和多数标准的网络协议(包含客户端和服务器),并且提供了多种工具,被广泛用于编写高性能的服务器软件】

  • 游戏【很多游戏使用C++编写图形显示等高性能模块,而使用Python或者Lua编写游戏的逻辑、服务器。相较于Python,Lua的功能更简单、体积更小;而Python则支持更多的特性和数据类型】

    搜狐、豆瓣、腾讯、网易、百度、阿里、淘宝、土豆、新浪等都在内部大量的使用Python

4.标识符

概念:计算机编程语言中,标识符是用户编程时使用的名字,用于给变量、常量、函数、语句块等命名,以建立起名称与使用之间的关系

合法标识符的命名规则:

  • 只能由数字,字母和下划线组成
  • 不可以是除了下划线之外的其他特殊字符
  • 开头不能是数字或者空格
  • 不能是Python的关键字
  • 严格区分大小写 age Age

标识符的命名规范:

  • 尽量做到见名知意【具有描述性】:尽量使用简单的英文单词表示
  • 遵守一定的命名规范
    • Python官方推荐的命名方式:变量名,函数名和文件名全小写,使用下划线连接,如:stu_name check_qq
    • 驼峰命名法:不同的单词之间使用首字母大写的方式进行分隔,又分为大驼峰和小驼峰,比如:stuName就是小驼峰,StuName就是大驼峰,小驼峰常用于变量或者函数的命名,大驼峰常用于类的命名

5.打包pack和拆包unpack

*:所有m1,m2,*m3 = 34,56,2,56,56,67,68,8,89print(m1,m2,m3)m1,*m2,m3 = 34,56,2,56,56,67,68,8,89print(m1,m2,m3)*m1,m2,m3 = 34,56,2,56,56,67,68,8,89print(m1,m2,m3)m1,m2,*m3 = 34,56,2,56,56,67,68,8,89print(m1,m2,*m3)m1,*m2 = [34,5,6,7,8]print(m1,m2)

6.变换两个变量的值

# 方式一:定义第三方变量
a = 10
b = 20
temp = a
a = b
b = temp
print(a,b)# 方式二           ******
a = 10
b = 20
a,b = b,a
print(a,b)# 方式三:加减法
a = 10
b = 20
a = a + b  # a = 30
b = a - b  # b = 10
a = a - b  # a = 20
print(a,b)# 方式四:异或^
#原理:一个数异或另一个数两次,结果是该数本身
# print(56 ^ 3 ^ 3)
a = 10
b = 20
a = a ^ b  # a = 10 ^ 20
b = a ^ b  # b = 10 ^ 20 ^ 20   = 10
a = a ^ b  # a = 10 ^ 20 ^ 10 = 20
print(a,b)# 7.常量:值不能发生改变的标识符
# 常量命名法:所有英文单词全部大写,不同单词之间使用下划线相连
PI = 3.1415
print(PI)

7.可变数据类型和不可变数据类型

​ 可变数据类型:list dict set
不可变数据类型:int float bool str tuple

8.说明is和==的区别和联系

​ a.==比较的是内容
b.is比较的是地址
c.如果两个变量的内容相同,他们的地址不一定相同,如果两个变量的地址相同,则他们的内容一定相同

9.切片特点

切片:根据指定的区间,通过某种规律在列表,元组或者字符串中进行截取,形成一个新的列表,元组或字符串
语法:列表[start

python面试题大全相关推荐

  1. python公司面试题集锦 python面试题大全

    问题一:以下的代码的输出将是什么? 说出你的答案并解释. class Parent(object): x = 1 class Child1(Parent): pass class Child2(Par ...

  2. 2022年python面试题大全(50题附答案)

    前言: 哈喽,哈喽,都说即将到来的金三银四是一年中找工作的高峰期.在这里小编先祝大家都能找到自己心仪的工作! 正文: 这里呢小编整理了一份Python面试题,还有一些招聘信息,今天就分享给大家,希望能 ...

  3. Python面试题大全(一):基础知识学习

    目录 Python基础 文件操作 1.有一个jsonline格式的文件file.txt大小约为10K 2.补充缺失的代码 模块与包 3.输入日期, 判断这一天是这一年的第几天? 4.打乱一个排好序的l ...

  4. Python面试题大全总结

    一.前言 有很多时候,你可能python使用的很熟练,但在面试的时候可能就过不了, 毕竟常说的面试造火箭,入职拧螺丝的情况是真实存在的.所以背八股文也是极其重要的! 这里分享一些常见和高频的面试题(3 ...

  5. python面试题大全 以及 vue面试题(必看!!!)

    1.列出5个python标准库 os:提供了不少与操作系统相关联的函数 sys: 通常用于命令行参数 re: 正则匹配 math: 数学运算 datetime:处理日期时间 2.谈下python的GI ...

  6. Python面试题大全(三)

    实现wsgi协议的模块:wsgiref,本质上就是编写一socket服务端,用于接收用户请求(django) werkzeug,本质上就是编写一个socket服务端,用于接收用户请求(flask) u ...

  7. Python面试题大全(五):测试、大数据、数据结构、架构

    目录 测试 213.编写测试计划的目的是 214.对关键词触发模块进行测试 215.其他常用笔试题目网址汇总 216.测试人员在软件开发过程中的任务是什么 217.一条软件Bug记录都包含了哪些内容? ...

  8. Python面试题大全(三):Web开发(Flask、爬虫)

    目录 Web Flask 140.对Flask蓝图(Blueprint)的理解? 141.Flask 和 Django 路由映射的区别? Django 142.什么是wsgi,uwsgi,uWSGI? ...

  9. Python面试题大全(二):python高级语法

    目录 Python高级 元类 42.Python中类方法.类实例方法.静态方法有何区别? 43.遍历一个object的所有属性,并print每一个属性名? 44.写一个类,并让它尽可能多的支持操作符? ...

最新文章

  1. 机器学习中的数学基础(2)——理解基、线性组合与向量空间
  2. 品牌网络推广方案浅析为什么网站关键词排名总是摇摆不定?
  3. python基础笔记_python基础学习笔记(九)
  4. AWS如何迁移实例到另一个区?
  5. 494. 目标和 golang 动态规划
  6. 机器学习速成课程 | 练习 | Google Development——编程练习:使用 TensorFlow 的起始步骤
  7. Android仿探探卡片拖拽,[转]仿探探拖拽卡片效果Vue3实现
  8. 关于MATLAB处理大数据坐标文件
  9. STL之Ranges区间讨论
  10. 让网站支持RSS订阅
  11. [转载]Spring zuul日志配置
  12. RocketMQ调优总结(system busy或broker busy报错解决)
  13. rtx web 分级管理系统 二次开发
  14. C++ 11中的Lambda表达式
  15. > 《物联网技术与应用》课程学习笔记
  16. 【已解决】电脑插网线可以上网,但是显示黄色感叹号
  17. 广东教国笔怎样才能提高自制力!
  18. 用户画像系列——什么是用户画像?金融行业大数据用户画像实践
  19. 安卓 linux 信令,呼叫信令
  20. ARM板上的华容道小游戏

热门文章

  1. RS232/RS422/RS485串口引脚连线
  2. 关闭云鲸拖地机器人风干_云鲸拖地机器人无法正常工作,官方给出解决方案:要关机24小时...
  3. 湖北省小学生计算机大赛,喜讯!我市文昌小学雷梓铭斩获湖北省中小学电脑制作活动创客项目一等奖...
  4. day 5-登录和代理IP学习总结
  5. Typora:修改高亮字体的样式和添加快捷键
  6. Unity3D 粒子系统实现一个简单的爆炸效果
  7. 分布式键值存储系统ETCD介绍
  8. Web协议详解与抓包实战之HTTP1.1 学习笔记【一】
  9. slickedit字体设置——使用 Verdana 字体
  10. 2021届秋招哈啰出行前端面经(一面)