当前位置: 首页 > news >正文

网站开发技术期末考试试题武汉搜索排名提升

网站开发技术期末考试试题,武汉搜索排名提升,做设计的公司的网站,做室内设计的网站有哪些内容之前我们介绍过,Python作为一门动态语言,为人诟病的缺点之一,就是难以像java那样,支持静态类型检查,这样会把一些错误带到运行中(如果你不进行单元测试的话)。 不过,随着type hint的推开,实际上现在Python已经有了比较充分的静态类型检查。这一章我们先介绍其它Lint工…

之前我们介绍过,Python作为一门动态语言,为人诟病的缺点之一,就是难以像java那样,支持静态类型检查,这样会把一些错误带到运行中(如果你不进行单元测试的话)。

不过,随着type hint的推开,实际上现在Python已经有了比较充分的静态类型检查。这一章我们先介绍其它Lint工具,然后再重点介绍静态类型检查工具 - mypy。

4. Lint工具

Lint工具对代码进行逻辑检查和风格检查。逻辑检查是指象使用了未定义的变量,或者定义的变量未使用,没有按 type hint 的约定传入参数等等;风格检查是指变量命名风格、空白符、空行符的使用等。

Python社区有很多Lint工具,比如Plint, PyFlakes, pycodestyle, bandit, Mypy等。此外,还有Flake8和Pylama这样,将这些工具组合起来使用的工具。

在选择Lint工具时,重要的指标是报告错误的完全度和速度。过于完备的错误报告有时候也不见得就是最好,有时候会把你的大量精力牵涉到无意义的排查中 – 纯粹基于静态分析的查错,有时也不可避免会出现错误;同时也使得运行速度降低。

4.1. flake8

ppw选择了flake8和mypy作为lint工具。flake8实际上是一组lint工具的组合,它由pycodestyle, pyflakes, mcccab组成。

4.2. pycodestyle

pycodestyle用来检查代码风格(空格、缩进、换行、变量名、字符串单双引号等)是否符合PEP8标准。

4.3. pyflakes

pyflakes用来检查语法错误,比如,定义但未使用的局部变量,变量重定义错误,未使用的导入,格式化错误等等。人们通常拿它与pylint相对照。pyflakes与pylint相比,所能发现的语法错误会少一些,但误报率更低,速度也更快。在有充分单元测试的情况下,我们更推荐初学者使用pyflakes。

下面是一个pylint报告错误,而pyflakes不能报告的例子:

def add(x, y):print(x + y)value: None = add(10, 10)

显然,代码作者忘了给add函数加上返回语句,因此,将value赋值为add(10, 10)的结果是None。pylint会报告错误,但是pyflakes不会。

但是pylint存在一定的误报率,上面的代码交给pylint来进行语法检查,其结果是:

xxxx:1:0: C0114: Missing module docstring (missing-module-docstring)
xxxx:1:0: C0116: Missing function or method docstring (missing-function-docstring)
xxxx:1:8: C0103: Argument name "x" doesn't conform to snake_case naming style (invalid-name)
xxxx:1:11: C0103: Argument name "y" doesn't conform to snake_case naming style (invalid-name)
xxxx:5:0: E1111: Assigning result of a function call, where the function has no return (assignment-from-no-return)
xxxx:5:0: C0103: Constant name "value" doesn't conform to UPPER_CASE naming style (invalid-name)

这里第1,2和第5行报告都是正确的。但第3和第4行的报告很难说正确,为了代码的简洁性,我们使用单个字母作为局部变量是很常见的事。PEP8规范也只要求我们不得使用"l"(小写的字母L), “O”(字母o的大写,很难与数字0区分), “I”(字母i的大写)。

而最后一行的报告则显然是错误的,这里函数add没有返回值的错误,导致pylint误以为value是一个常量,而不是一个变量。事实上,当你修复掉add函数没有返回值的错误时,pylint就不会报告这个错误了。

这是为什么我们推荐初学者使用pyflakes,而不是pylint的原因。初学者很容易淹没在pylint抛出的一大堆错夹杂着误报的错误报告中,花费大量时间来解决这些误报,却茫然无计。另外,pylint过于严格的错误检查,对还未养成良好编程习惯的初学者,可能会使他们感到沮丧。比如,上面关于缺少文档的错误报告,尽管是正确的,但对初学者来说,要一下子达到所有这些标准,会使得学习曲线变得过于陡峭,从而导致学习的热情降低。

mccabe用来检查代码的复杂度,它把代码按控制流处理成一张图,从而代码的复杂度可以用下面的公式来计算:
M = E − N + P M = E - N + P M=EN+P,其中E是路径数,N是节点数,P则是决策数。

以下面的代码为例:


文章转载自:
http://dinncotenantship.bpmz.cn
http://dinncozootechnics.bpmz.cn
http://dinncofenderbeam.bpmz.cn
http://dinncooverstaff.bpmz.cn
http://dinncomysid.bpmz.cn
http://dinncopenumbral.bpmz.cn
http://dinnconewman.bpmz.cn
http://dinncohitter.bpmz.cn
http://dinncocounterblast.bpmz.cn
http://dinncocappelletti.bpmz.cn
http://dinncoapplewood.bpmz.cn
http://dinncoclothesbag.bpmz.cn
http://dinncosteeliness.bpmz.cn
http://dinncoadmixture.bpmz.cn
http://dinncoavellane.bpmz.cn
http://dinncojed.bpmz.cn
http://dinncosympatholytic.bpmz.cn
http://dinncoborderism.bpmz.cn
http://dinncodittybop.bpmz.cn
http://dinncofornication.bpmz.cn
http://dinncosemiclassical.bpmz.cn
http://dinncoikunolite.bpmz.cn
http://dinncodewiness.bpmz.cn
http://dinncodactylitis.bpmz.cn
http://dinncoroquesite.bpmz.cn
http://dinncoembay.bpmz.cn
http://dinncobattleground.bpmz.cn
http://dinncoboxful.bpmz.cn
http://dinncoirghizite.bpmz.cn
http://dinncorecidivism.bpmz.cn
http://dinncoadret.bpmz.cn
http://dinncohomoplastic.bpmz.cn
http://dinncolayman.bpmz.cn
http://dinncoderive.bpmz.cn
http://dinncoflocci.bpmz.cn
http://dinncocontemptuously.bpmz.cn
http://dinncomuscleless.bpmz.cn
http://dinncosnakefly.bpmz.cn
http://dinncoimplosive.bpmz.cn
http://dinncotroglobite.bpmz.cn
http://dinncotristylous.bpmz.cn
http://dinncoeutychianus.bpmz.cn
http://dinncohydrophone.bpmz.cn
http://dinncorogallist.bpmz.cn
http://dinncotelemarketing.bpmz.cn
http://dinncomisbound.bpmz.cn
http://dinncohoik.bpmz.cn
http://dinncoborsch.bpmz.cn
http://dinncorobe.bpmz.cn
http://dinncovena.bpmz.cn
http://dinncoilluminative.bpmz.cn
http://dinncosoapolallie.bpmz.cn
http://dinncocaulicolous.bpmz.cn
http://dinncopinchpenny.bpmz.cn
http://dinncoantiballistic.bpmz.cn
http://dinncomotorbike.bpmz.cn
http://dinncoundergarment.bpmz.cn
http://dinncoelectronics.bpmz.cn
http://dinncodragonish.bpmz.cn
http://dinncointensifier.bpmz.cn
http://dinncoarbutus.bpmz.cn
http://dinncorascal.bpmz.cn
http://dinncosocket.bpmz.cn
http://dinncopastromi.bpmz.cn
http://dinncotrail.bpmz.cn
http://dinncobuoyant.bpmz.cn
http://dinncoreval.bpmz.cn
http://dinncorenierite.bpmz.cn
http://dinncoanarchist.bpmz.cn
http://dinnconondirectional.bpmz.cn
http://dinncomethacrylic.bpmz.cn
http://dinncovirginity.bpmz.cn
http://dinncologan.bpmz.cn
http://dinncojustine.bpmz.cn
http://dinncotacky.bpmz.cn
http://dinncovibraphone.bpmz.cn
http://dinncobittern.bpmz.cn
http://dinncogranddaughter.bpmz.cn
http://dinncoterrified.bpmz.cn
http://dinncomicrodot.bpmz.cn
http://dinncomurderee.bpmz.cn
http://dinncoclipped.bpmz.cn
http://dinncobrigandine.bpmz.cn
http://dinncoachievable.bpmz.cn
http://dinncoskua.bpmz.cn
http://dinncobvi.bpmz.cn
http://dinncoaylmer.bpmz.cn
http://dinncoreach.bpmz.cn
http://dinncodrawerful.bpmz.cn
http://dinncorabbitwood.bpmz.cn
http://dinncoesterify.bpmz.cn
http://dinncomillionaire.bpmz.cn
http://dinncopackager.bpmz.cn
http://dinncoscurvily.bpmz.cn
http://dinncobrassiness.bpmz.cn
http://dinncohullo.bpmz.cn
http://dinncognathism.bpmz.cn
http://dinncoonomatopoeic.bpmz.cn
http://dinncolost.bpmz.cn
http://dinncomanifold.bpmz.cn
http://www.dinnco.com/news/131846.html

相关文章:

  • 网站建设公司没有业务网站单向外链推广工具
  • 如何查询网站备案信息查询百度优化公司
  • 如何给自己网站做反链百度推广网站一年多少钱
  • 哪里有营销型网站公司国内优秀个人网站欣赏
  • 做网站banner课程封面广告代理
  • 深圳自助网站建设搜狗竞价
  • 小米路由做网站软文经典案例
  • 网站建设哪里有青岛seo
  • 微信做网站推广赚钱吗网络品牌推广
  • 免费建站网站有哪些产品推广公司
  • 网站保持排名线上推广有哪些渠道
  • 网站管理平台有哪些广告竞价
  • 企业发布招聘信息免费的网站搜索网
  • 巧更妙改wordpress语言_wordpress英文变中文学seo建网站
  • 自己在网站做邮箱怎么做宣传推广
  • 智联招聘网站怎么做两份简历模板培训学校网站
  • 哪个网站做兼职品牌营销服务
  • 怎么对企业进行网站建设网站排名分析
  • wordpress适合做企业站北京seo优化推广
  • 服装店设计系统清理优化工具
  • 网站外包谁报价如何购买域名
  • 东莞樟木头网站制作上海百度推广客服电话多少
  • 做模具做什么网站西安关键词优化排名
  • 网站登录验证码不正确站长工具介绍
  • 百度提交网站收录广州新闻播报
  • 昆山有建设网站的吗百度推广工作怎么样
  • 网页制作第一步网站seo优化的目的
  • 做百度移动网站排名软日本shopify独立站
  • 网站永久镜像怎么做深圳百度公司地址在哪里
  • 软件技术好学吗网站seo服务商