前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python90-1 明确你所使用的Python版本

Python90-1 明确你所使用的Python版本

作者头像
一只大鸽子
发布2022-12-06 09:23:54
3840
发布2022-12-06 09:23:54
举报
文章被收录于专栏:Python基础、进阶与实战

Python90系列说明

Python90 系列文章内容主要参考《Effective Python 90 Specific Ways to Write Better》(高效Python,编写更好的Python代码的90条具体建议),适合已经熟悉基本语法的同学阅读。写书时,作者使用的是Python3.8,本系列文章也会使用该版本。全书共10章,90小节,对应90条编写高质量Python代码的具体建议。10章的内容如下:

  • • 第1章 Pythonic思维
  • • 第2章 列表与字典
  • • 第3章 函数
  • • 第4章 推导与生成
  • • 第5章 类与接口
  • • 第6章 元类与属性
  • • 第7章 并发与并行
  • • 第8章 稳定与性能
  • • 第9章 测试与调试
  • • 第10章 协作开发

Chapter 1: Pythonic Thkinging

Python社区使用Pythonic来形容Python的独特风格--简单明了。Pythonic不是由编译器(compiler)强制实现的,而是在经验中产生的。熟悉其它语言的程序员在写Python时可能会代入C++、Java习惯。新手程序员可能对Python的简单语法满意。知道如何用Pythonic方式来完成Python中的一般任务非常重要。这些模式会影响你的每个程序。

第1条:明确你使用的Python版本

Item 1:Know which Version of Python You're Using

知道你现在使用的Python版本非常重要,尤其是在你有多个虚拟环境的时候,有非常多的人把包安装到一个环境,然后又使用另一个环境编写代码,出现找不到包的错误。

命令行使用下面命令查看python版本

代码语言:javascript
复制
python --verion
代码语言:javascript
复制
输出:
Python 3.8.13

或者(在解释器中)利用内置的sys模块查看

代码语言:javascript
复制
import sys
print(sys.version_info)
print(sys.version)
代码语言:javascript
复制
输出:
sys.version_info(major=3, minor=8, micro=13, releaselevel='final', serial=0)
3.8.13 (default, Mar 28 2022, 06:59:08) [MSC v.1916 64 bit (AMD64)]

或者,使用Pycharm可以在右下角看到Python解释器版本:

Python核心开发者和社区积极维护、改进Python3。Python3有一系列强大的新特性。大多数开源的Python库都兼容Python3,因此强烈推荐使用Python3。Python2计划在2020年1月停止维护。如果你还在用Python2的代码,考虑使用工具例如2to3six帮助代码迁移到Python3。

Things to Remember

  • • Python3 是最新和支持最好的Python版本,你应该使用它。
  • • 确保Python解释器是你想用的版本。
  • • 避免使用Python2,因为2020年1月之后就不再维护了。

彩蛋:

在Python解释器中输入import this来阅读Python之禅(Zen of Python)

代码语言:javascript
复制
The Zen of Python, by Tim Peters


Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
代码语言:javascript
复制
python之禅,写自Tim Peters

美丽胜过丑陋。
清楚胜过模糊。
简单胜过复杂。
复杂胜过错综复杂。
扁平胜过嵌套。                              # 拒绝非常多层的嵌套
稀疏胜过稠密。
可读性非常重要。                            # 遵循代码规范
特殊情况不足以破坏规则。
实用性胜过单纯。
错误不该被安静地跳过。                       # 要么处理错误,要么抛出错误
除非显式消除。
面对歧义,拒绝猜测。                         # 不要写容易产生歧义的代码
应该有一种而且最好是只有一种明显的方法来做一件事。
尽管这种方式可能不那么显然,除非你是荷兰人。     # ?大概是因为作者是荷兰人
现在去做而不是推到以后,                     # 简陋的实现比没有好
即使将来比现在好。
如果实现很难解释,那么这是个坏主意。       
如果实现很易解释,那么可能是好主意。
命名空间是个好想法,让我们做更多命名空间。
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-06-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一只大鸽子 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Python90系列说明
  • Chapter 1: Pythonic Thkinging
    • 第1条:明确你使用的Python版本
      • Item 1:Know which Version of Python You're Using
        • Things to Remember
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档