设为首页 - 加入收藏
广告 1000x90
您的当前位置:澳门金冠 > 资源 > 效果代码 > 正文

这些Python代码技巧你肯定还不知道

来源:未知 编辑:admin 时间:2019-04-17

  on 已是一种发展完善且非常多样化的语言,其中肯定有一些你尚未发现的功能。本文或许能够让你学到一些新技巧。

  人们还经常把 Python 笑称为「可执行伪码(executable pseudocode)」。但是,当你可以编写这样的代码时,很难去反驳这种言论:

  不过,Python 标准库提供了 collections 模块。这个方便的附加组件可以为你提供更多数据类型。

  当以交互方式运行 Python 时,这可能是一个非常有用的功能,并且可以动态地探索你正在使用的对象和模块。

  Python 流行的一个结果是,总有新版本正在开发中。新版本意味着新功能——除非你的版本已经过时。

  不过,别担心。__ future__模块允许用户导入新版 Python 的功能。这简直就像时间旅行,或者魔法什么的。

  地理(Geography)对于程序员来说可能是一个具有挑战性的领域。但是 geopy 模块让它变得异常简单。

  它通过抽取一系列不同地理编码服务的 API 来工作,使用户获取一个地方的完整街道地址、纬度、经度,甚至海拔高度。

  另外一个有用的功能是距离:它可以用你喜欢的度量单位计算出两个位置之间的距离。

  陷入编码问题,却不记得以前见过的解决方案?需要检查 StackOverflow,但不想离开终端?

  但是请注意——它会从 StackOverflow 的最高票答案中抓取代码。也就是说它提供的信息并非总是有用……

  Python 的 inspect 模块非常有助于理解问题背后的详情。你甚至可以在 inspect 模块上调用其方法!

  当然,除了这些琐碎的用途之外,inspect 模块还能帮助你理解代码正在做的事。你还可以用它编写自文档化代码。

  Jedi 库是一个自动完成和代码分析的库。它使代码编写变得更快、效果更高。

  除非你正在开发自己的 IDE,否则你肯定会对使用 Jedi 库作为编辑插件很感兴趣。

  你可能已经在使用 Jedi 了。IPython 项目就使用 Jedi 实现代码自动完成功能。

  学习任何语言时都会遇到很多里程碑。对于 Python 来说,理解神秘的**kwargs 语法可能算是其中之一。

  词典的秘钥是参数名,值是传递给函数的值。你甚至不需要称它为 kwargs!

  这些表达式使得编写干净易读的代码变得很容易,那些代码读起来几乎像自然语言一样。

  Python 通过许多内置功能支持函数式编程。map() 函数是最有用的函数之一——特别是当它与 lambda 函数结合使用时。

  在上面的例子中,map() 将一个简单的 lambda 函数应用于 x 中的每个元素。它返回一个 map 对象,该对象可以被转换成可迭代的对象,如列表或元组。

  它可以帮助你从大量顶级国际出版物中检索到新闻文章和相关元数据。你可以检索图像、文本和作者名。

  它实际上是一个简单的概念。你有没有想过为什么 Python 允许用户使用 + 运算符来将数字相加,并级联字符串?这就是运算符重载在发挥作用。

  你可以使用 Python 的标准运算符号来定义对象,这样你可以在与这些对象相关的语境中使用它们。

  Python 的默认 print 函数就可以实现打印功能。但如果尝试打印较大的嵌套对象,就会发现打印结果很丑。

  这时 Python 标准库的 pretty printer 模块就可以发挥作用了。该模块可以将复杂的结构化对象以一种易读的格式打印出来。

  该模块允许用户实现队列(queue)数据结构。队列数据结构允许用户根据特定的规则添加和检索条目。

  最后,优先级队列(priority queue)允许用户根据对象对应的优先级类别来检索对象。

  在 Python 中定义一个类别或对象时,以「官方」方式将对象表示为字符串很有用。例如:

  Python 是一种伟大的脚本语言,不过有时使用标准 os 和 subprocess 库会有点棘手。

  该库允许用户像使用普通函数一样调用任意程序,这对自动化工作流和任务非常有用。

  这有利于缩短开发周期。但是,简单的类型错误(typing issue)导致的运行时错误真的太烦了。

  从 Python 3.5 版本开始,用户可以选择在定义函数时开启类型提示。

  它们还允许你在运行之前使用类型检查工具捕捉 TypeError。在进行大型复杂项目时执行此类操作是值得的。

  在给定集合中找出重复数字的可能性极低。即使有一万亿 UUID,重复数字存在的概率也远远低于十亿分之一。

  你可能同时处理多个 Python 项目。不幸的是,有时候两个项目依赖于相同依赖项的不同版本。那你要安装哪个版本呢?

  幸运的是,Python 支持虚拟环境,这使得用户能够充分利用两种环境。见下列行:

  Wikipedia 拥有一个很棒的 API,允许用户以编程方式访问巨大体量的免费知识和信息。

  和真实的维基百科网站类似,该模块支持多种语言、页面消歧、随机页面检索,甚至还具备 donate() 方法。

  将打开 xkcd 画的 Python 漫画。不要改变这一点,Python。不要改变。

  与 JSON 不同,它可以存储更复杂的对象并引用自己的元素。你还可以编写注释,使其尤其适用于编写配置文件。

  PyYAML 使你能够存储任何数据类型的 Python 对象,以及任何用户定义类别的实例。

  zip() 内置函数使用多个可迭代对象作为输入并返回元组列表。每个元组按位置索引对输入对象的元素进行分组。

相关推荐:

网友评论:

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片

网站地图 | xml地图

Copyright © 2012-2019 澳门金冠  版权所有

Top