这几天做完了牛客网上的Python试题,下面是对一些错题的分析,并总结了一些python中应该注意的知识点。

字符串比较

解析:

a,b为字符串不可变类型,所以指向相同地址,所以 a is b

is:指地址相同

==: 内容相同

a+b:字符串连接为’123123’

LEGB规则

解析:

Python一切皆对象,所以在Python中变量名是字符串对象。Python的命名空间是一个字典,字典内保存了变量名称与对象之间的映射关系,因此,查找变量名就是在命名空间字典中查找键-值对。LEGB就是用来规定命名空间查找顺序的规则。LEGB规定了查找一个名称的顺序为:

local–>enclosing function locals–>global–>builtin

Local: 即函数内部命名空间;

Enclosing function locals: 外部嵌套函数的名字空间

module(文档本身):Global(module): 函数定义所在模块(文档)的名字空间

Builtin: Python内置模块的名字空间

Set

解析:

集合(set)是一个无序的不重复元素序列。

可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

本题中列表转集合,集合没有重复元素。

转义字符

解析:

python里面%d表数字,%s表示字符串,%%表示一个%;

单引号内嵌套单引号需要转义字符/;单引号内嵌套双引号不需要嵌套;

双引号内嵌套双引号需要转义字符/;双引号内引用单引号不需要转义字符;

类实例关系

解析:

isinstance(object,classinfo): 用于判断object是否是classinfo的一个实例,或者object是否是classinfo类的子类的一个实例,如果是返回True.

issubclass(class,classinfo): 用于判断class是否是classinfo类的子类,如果是返回True.

new和init的区别

解析:

init是当实例对象创建完成后被调用的,然后设置对象属性的一些初始值。

new是在实例创建之前被调用的,因为它的任务就是创建实例然后返回该实例,是个静态方法。

new在init之前被调用,new的返回值(实例)将传递给init方法的第一个参数,然后init给这个实例设置一些参数。

字典

解析:

字典是python中唯一的映射类型,阐述了键与键值之间的对应关系。字典中键必须是唯一的。列表中的项目包括在方括号中。列表是可变的数据类型(可以增加或删除项目)。所以,列表中的项目不能用来作为字典的键。

浅拷贝和深拷贝

解析见上图中注释

try else finally

解析:

try的语句出现异常才会执行except后的语句,如果正常,则执行完try后执行else。另外,finally语句不管有无异常都会执行。所以上图中答案为4。

name

解析:

name定义在一个模块中,当解释器执行这个py文档时,name的值就为main;

当这个模块被引用即被其他模块import时,name的值就是模块名,也就是运行的py文档名。

闭包

解析:

在函数中可以定义另一个函数时,如果内部的函数引用了外部的函数的变量,则可能产生闭包。所以若a=2,b=3,则进程运行值为8。

装饰器

解析见上图

大小比较

类似元组、字符串、列表这类格式,在进行两者之间的比较时,先从第一个元素开始比较 ASCII 码值大小,如果相等,则依次向后比较,如果全部相等,则比较数量大小。

ASCII 码值大小:

数字: 0-9: 48-57

字母:A-Z:65-90.

a-z: 97-122

布尔值

所有标准对象均可以用于布尔测试,下列对象的布尔值是False:

• None

• False

• 所有值为零的数:0(整型),(浮点型),0L(长整型),0.0+0.0j(复数)

• “”(空字符串),[ ] (空列表), ()(空元祖),{} (空字典)

语言类型

语言特性

解释性语言的特性是非独立和效率低。

Python是解释性语言,在此以Python举例。

非独立性: Python代码解释执行结果依赖于IDLE的版本,其中大版本有Python2和Python3之分,Python2最经典的版本为Python2.7,Python3有Python3.4,Python3.6等等。

效率低: 由于Python是解释性语言,动态编译,直到代码执行时,才加以解释,相比于编译型语言,可以生成编译代码,执行效率低。

三元运算符

$max = x > y ? x : y$ Java和 C中正确,

在Python中的三元运算符不是这样的,是$max=x if x>y else y​$

标识符

python标识符可以使用下划线 字母 数字组成,但是数字不允许作为标识符的开头出现。

线程协程

线程由操作系统控制,协程由进程自身控制。

编译及解码Python中字符串编译的过程:gbk=>unicode=>utf16=>url 解码

字符串解码顺序为:url解码=>utf16=>unicode=>gbk

map函数

map() 会根据提供的函数对指定序列做映射。

第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。例如:

1

2

3

4

5

6

7

8

9

10

11>>>def (x) :

return x ** 2

>>>map(square, [1,2,3,4,5])

[1, 4, 9, 16, 25]

>>>map(lambda x: x ** 2, [1, 2, 3, 4, 5])

[1, 4, 9, 16, 25]

>>>map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])

[3, 7, 11, 15, 19]

逻辑运算符

数据类型

结束符

C语言中字符串使用‘ ’作为结束符以防止越界,但python中字符串其实是一个固定长度的字符数组,并不需要结束符。

math.floor函数及除法Python3 中math.floor() 函数的返回值应为整型,而Python2 的 math.floor() 函数返回值是浮点型。

Python2 中除法默认向下取整,为整型;Python3 中的除法为正常除法,会保留小数位,为浮点型。

Python 中万物皆为对象,函数也不例外,函数作为对象可以赋值给一个变量、可以作为元素添加到集合对象中、可作为参数值传递给其它函数,还可以当做函数的返回值。

变量Python 是弱类型脚本语言,变量就是变量,没有特定类型,因此不需要声明。

但每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

用 del 语句可以释放已创建的变量(已占用的资源)。

切片slice

Python 中 切片(Slice)功能的理解:L[start : stop [ : step]]

start 默认值是 0;stop 默认值为 L 的长度;step 默认值是 1。

命名方式

牛客网最终python笔试题_牛客笔试题之Python相关推荐

  1. 牛客网数据开发题库_牛客网试题纠错

    1.JVM 大多数 JVM 将内存区域划分为 Method Area(Non-Heap)(方法区) ,Heap(堆) , Program Counter Register(程序计数器) ,   VM ...

  2. 牛客网数据开发题库_牛客网SQL题库NO.32~40

    不要问为什么没有31题,大概被牛客吞掉了吧,哈哈哈哈 SQL 32[简单] 将employees表的所有员工的last_name和first_name拼接起来作为Name,中间以一个空格区分 CREA ...

  3. 牛客网数据开发题库_牛客网刷题笔记--数据库

    C.SC(S#,C#,G)答案:A. 若X→Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖. 关系模式S 中,(S#,Sd)→Dc,Sd →Dc,Dc不完全依赖于Sd且Sd为非主属性.故本题答案为 ...

  4. 博客网最终能否破茧成蝶?

    作者:赵福军出处:天极网 摘要:博客营销广告费用到底该归谁?如何在BSP.博客之间分利才是合理的? -------------------------------------------------- ...

  5. Python灰帽子_黑客与逆向工程师的Python编程之道

    收藏自用 链接:Python灰帽子_黑客与逆向工程师的Python编程之道

  6. 华为机试python编程题_牛客网华为机试题之Python解法

    牛客网华为机试题之Python解法 第1题 字符串最后一个单词的长度 a = input().split(" ") print(len(a[-1])) 第2题 计算字符个数 a = ...

  7. 牛客网_Go语言相关练习_选择题(2)

    注:题目来源均出自牛客网. 一.选择题 Map(集合)属于Go的内置类型,不需要引入其它库即可使用. Go-Map_菜鸟教程 在函数声明中,返回的参数要么都有变量名,要么都没有. C选项函数声明语法有 ...

  8. 牛客网数据开发题库_练习SQL利器,牛客网SQL实战题库

    牛客网SQL实战网址:https://www.nowcoder.com/ta/sql 持续更新--记录自己在牛客网SQL的做题过程 更新进度:61题,2019-4-3,更完了 1.查找最晚入职员工的所 ...

  9. 找工作、备考、面试刷题网站推荐(牛客网、力扣、计蒜客、hihocoder、七月在线)以及acm竞赛oj

    不管是找工作笔试面试白板试进大厂,还是研究生参加初试复试,数据结构和算法都是都是重中之重,刷题就很必要,来拿走自己的offer 吧! 一.offer刷题推荐 1.牛客网 链接:牛客网 - 找工作神器| ...

  10. 牛客网华为云服务器,把通过牛客网注册的华为云服务器用起来!

    这次双十一, 牛客网联合华为云搞活动, 惊爆价, 学生机一年只要9块钱, 9块钱, "老夫"激动得无以言表, 简直太棒了! 活动一开始, 我就立马下单购买了, 要做第一个吃螃蟹的人 ...

最新文章

  1. 数据库MYSQL学习系列二
  2. 在 Linux 下打包命令 tar 和压缩命令 7z 的配合使用示例
  3. 微软职位内部推荐-Sr. SW Engineer for Azure Networking
  4. 如何给table表格的tr行加border边框(解决篇)
  5. 7-323 逆波兰表达式 (10 分)
  6. Uinttest +excel结合使用--详细讲解
  7. linux中使用gbd进行单布调试
  8. Asp.Net Core 入门(八)—— Taghelper
  9. excel手机版_如何一次性将单位所有人的手机号导入手机通讯录中?
  10. pdf怎么删除页码 页码删除介绍
  11. 解决360浏览器自带翻译不能使用的问题
  12. java 甄别 pdf文件是否被二次修改
  13. 路由器上网功能正常但加载不出图片的解决办法
  14. 最新联发科Helio X30(mt6799)芯片处理器详细资料(datasheet)
  15. 新一代手机声音传音器THA-2开始发售,大家快来体验吧!
  16. Ubuntu自己动手本地模拟搭建git服务器
  17. 南开大学推出中国首家元宇宙新闻与传播学院
  18. Android hilt 依赖注入使用详解
  19. 关于relief算法选择特征的问题
  20. JavaWeb基础学习2

热门文章

  1. 电视视频直播在线播放网站PHP源码V1.2
  2. Python代码缩进
  3. jsqlparser解析SQL工具类
  4. 三菱modbusRTU通讯实例_编程实例 | 台达PLC控制伺服项目接线及程序案例
  5. 【MFC开发(1)】MFC的介绍、与Qt的区别
  6. 已知空间中ABC3点坐标与到D点的距离,求D点坐标
  7. 使用Xftp连接Linux
  8. node.js 知识分享网站源码【毕业设计】
  9. 完整版商城PHP源码小程序,前后端+后台+小程序;访问地址在文末
  10. 【软件笔记------Orcad Capture CIS 17.2/pads vx2.7】------ orcadpads PCB设计简要教程