上一页下一页 Python 可在各种平台上使用,包括 Linux 和 Mac OS X。让我们了解如何设置 Python 环境。 本地环境设置 打开终端窗口,输入“python”,查看是否已经安装以及安装了哪个版本。 Unix(Solaris、Linux、FreeBSD、AIX、HP/UX、SunOS、IRIX 等) 赢得 9x/NT/2000 Macintosh(英特尔、PPC、68K) 操作系统/2 DOS(多个版本) PalmOS 诺基亚手机 Windows CE Acorn/RISC 操作系统 BeOS 阿米加 VMS/OpenVMS QNX VxWorks 心灵术士 Pyth
上一页下一页 Python 是一种高级的、解释性的、交互式的和面向对象的脚本语言。 Python 被设计为具有高度可读性。它在其他语言使用标点符号的情况下经常使用英语关键字,并且它的句法结构比其他语言少。 Python 被解释 − Python 在运行时由解释器处理。您无需在执行程序之前对其进行编译。这类似于 PERL 和 PHP。 Python 是交互式的 - 您实际上可以坐在 Python 提示符下,直接与解释器交互来编写程序。 Python 是面向对象的 − Python 支持将代码封装在对象中的面向对象风格或编程技术。 Python 是初学者的语言 − Py
如果你错过了:Python 2 是 自 2020 年 1 月 1 日起正式不支持 。 如果您仍在使用 Python 2.7,请立即升级 .如果您不确定自己运行的是哪个版本,请检查您的 Python 版本。 许多包维护者已经迁移到 Python 3。一些仍然支持 Python 2,而另一些已经放弃了对 Python 2 的支持。如果您需要从 Python 2 代码库迁移,请阅读我们关于将 Python 代码迁移到 Python 3 的指南。
您可以在代码中检查 Python 版本,以确保您的用户没有使用不兼容的版本运行您的脚本。使用这个简单的检查: = (3, 5): # Kindly tell your user (s)he needs to upgrade # because youre using 3.5 features
IPython 是一个增强的 Python REPL,它实际上是 Jupyter notebook 的核心.简而言之,Jupyter 是一个开源 Web 应用程序,允许您创建和共享包含实时代码、方程式、可视化和叙述性文本的文档。如果你经常使用交互式 shell,而且你不了解 IPython,那么你真的应该看看这个! 目录 IPython 功能 魔术命令 引用之前的输入和输出 安装 IPython IPython 功能 IPython shell 提供的一些特性是: 全面的对象自省。 输入历史记录,跨会话持续存在。 在会话期间使用自动生成的引用缓存输出结果。 制表符补全,支持 Pyt
带sys.getsizeof() 你可以检查一个对象的内存使用情况: import sys mylist = range(0, 10000) print(sys.getsizeof(mylist)) # 48 哇……等等……为什么这个巨大的列表只有 48 个字节? 这是因为 range 函数返回一个可迭代对象,其行为仅类似于数字列表,但在内部仅保留最后一次迭代次数的计数。范围比使用实际的数字列表更节省内存。 您可以通过使用列表推导来创建一个实际的 Python 相同范围内的数字列表: import sys myreallist = [x for x in range(0, 10000)]
使用 Python,我们可以一次返回多个值。显然,Python 中的大多数函数都返回一个值,通常是该函数完成的工作的结果。在本文中,您将了解到在 Python 中也可以返回多个值,而且您不需要字典、列表或数据类来执行此操作。 目录 用一个元组返回多个值 Python 中返回多个值的替代方法 继续学习 用一个元组返回多个值 您需要做的就是在 return 语句之后列出您的值,用逗号分隔。下面是一个如何返回多个值以及如何一次将它们分配给多个变量的示例: def get_user(id): # fetch user from database # .... retu
Python 数据类是具有 @dataclass 的常规 Python 类 装饰师。它是专门为保存数据而创建的。从 Python 3.7 版开始,Python 通过名为 dataclass 的内置模块提供数据类 .与我们将在本文中探讨的常规 Python 类相比,有几个优点。我们还将查看示例代码和您可能希望对数据类执行的一些常见操作。 目录 使用数据类的优势 Python 数据类示例 默认值 将数据类转换为 JSON 继续学习 使用数据类的优势 为什么要使用数据类而不是常规的 Python 类?首先,让我们看看 Python 数据类必须提供的一些优势。 需要最少的代码 @datac
通过这个巧妙的小技巧,您可以在不使用第三个变量的情况下交换两个 Python 变量: a = 1 b = 2 a, b = b, a print (a) # 2 print (b) # 1 这只是一行代码!正如您在第 3 行中看到的,在 Python 中交换变量不需要临时变量。
使用这个技巧,您可以快速将 Python 字符串转换为标题大小写。引用维基百科的文章: 在离线和在线打印中都经常使用标题大小写。该网站本身使用标题大小写的所有文章。如果您仔细观察,您会发现大多数网站、报纸和杂志实际上都使用标题大小写。 您可以在 Python 中快速创建标题大小写字符串;只需使用内置的 title() 方法: >>> title = "string in title case" >>> title.title() String In Title Case 不幸的是,这不太好用: 如果字符串包含撇号,则会导致:它
Python 生态系统中几乎所有你能想到的东西都有一个包,所有这些都可以通过一个简单的 pip 命令安装。因此,在 Python 中也有一个可以处理表情符号的包,任何人都不应该感到惊讶。 您可以使用以下方式安装表情包: $ pip3 install emoji 该软件包允许您将 Unicode 表情符号转换为字符串版本,反之亦然: import emoji result = emoji.emojize(Python is :thumbs_up:) print(result) # Python is ???? # You can also reverse this: result = em
Pillow Python Imaging Library 是图像处理的理想选择。通常,它用于存档和批处理应用程序。当然,您可以随意将其用于您能想到的任何其他事情。您可以使用该库: 创建缩略图 文件格式之间的转换, 打印图片 获取直方图(非常适合自动对比度增强) 旋转图片 应用模糊等滤镜 目录 安装图片处理包 处理图片 显示图片 延伸阅读 安装图像处理包 要安装 Pillow,它是原始 Python Imaging Library 的一个分支和延续,请使用 pip install 命令: pip3 install Pillow 处理图像 Pillow 提供了几个过滤器,这些过滤器
最早的 Python pep 之一是 PEP-20。这是一份包含 19 篇与 Python 编程相关的论文,名为“The Zen of Python”。这些规则可以追溯到 2004 年,又基于 PEP-8。 一个在 Python 中存在已久的小彩蛋列出了这 19 条规则: import this 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 t
您可以使用下划线运算符获取 Python REPL 中最后一个表达式的结果,例如在 Python REPL 中,这看起来像: _ + 3 12 这适用于 IPython shell too .此外,IPython shell 允许您使用 Out[n] 获取表达式 In[n] 的值 .例如,Out[1] 将在下面的示例中为我们提供数字 9: In [1]: 3 * 3 Out[1]: 9 In [2]: Out[1] + 3 Out[2]: 12 In [3]: _ + 3 Out[3]: 15
Python Attrs 包允许您使用简单的注释创建高级数据类。当然,python 也有自己的原生数据类模块,但是 Python attrs 包提供了一些您可能喜欢的额外功能! 目录 安装属性 属性与数据类 一个基本的 Python attrs 示例 Python attrs 验证器示例 Python attrs 转换器示例 在 Python attrs 中使用槽 继续学习 安装属性 attrs 包不是基础库的一部分,因此您需要使用 pip install 命令或类似的命令(如 Pipenv)安装它。您可能还想创建一个虚拟环境,这样它就不会干扰您拥有的其他项目。这个包叫做 attrs
Python 类槽是一个没有多少程序员知道的特性。在一个有槽的类中,我们使用魔术字段名称 __slots__ 显式定义我们的类允许拥有的字段 .这有一些好处: 从类中创建的对象会占用更少的内存 访问类属性更快 你不能随机地给一个开槽类的对象添加新属性 下面是一个如何定义时隙类的例子: qh = Card(queen, hearts) 对我来说,最大的优势是你不能随机添加新属性到一个开槽类。它可以防止代价高昂的错误!演示:将属性分配给开槽类时的拼写错误将引发错误,而不是 Python 默默地创建新属性。 对于没有复杂继承的小类,使用槽可能是一个优势。尤其是当您需要创建此类类的许多实例
我看到很多人以错误的方式处理异常。也许这也适用于你。下面的情况是不是很眼熟? 您正在编写一些代码,但您知道您正在使用的库可能会引发异常。你不记得是哪一个,确切地说。在这一点上,使用所谓的包罗万象的块并继续有趣的东西是很诱人的。 目录 最糟糕的方法 捕获所有异常的更好方法 情况变得更糟 抓住你能处理的东西 结论 最糟糕的方法 你能做的最糟糕的事情是创建一个捕获任何东西的 try-except 块。包罗万象,我的意思是: try: ... except: pass 像这样的包罗万象的块是不好的,因为: 您不知道可能会引发哪些其他异常(稍后会详细介绍)。 我们通过
对于我们中的许多人来说,调试 Python 代码归结为添加打印语句并尝试根据输出推断正在发生的事情。这并不理想,但出于某种原因,人们只是不想接触 Python 调试器。 目录 使用打印调试代码 设置 Python 调试器断点 使用 Python 调试器 Python 调试器命令 继续学习 使用 print 调试代码 如果您是使用 print 的人之一 对于调试,我不是在评判你 .学习 Python 很难。编程很难。生活艰难。我知道,如果您已经在苦苦挣扎,再学习另一件事似乎很烦人。并将该打印语句添加到您的代码中......这更容易。一点忏悔:我也一直这样做。它并不像某些人看起来的那么糟
Python中有哪些模块? 模块是带有 python 代码的文件。代码可以以变量、函数或类的形式定义。文件名成为模块名。 例如,如果您的文件名为 guru99.py,则模块名称将为 guru99 .使用模块功能,您可以将代码分成不同的文件,而不是将所有内容都写在一个文件中。 在本教程中,您将学习: Python中有哪些模块? Python 导入模块 如何在 Python 中创建和导入模块? 在 Python 中导入类 使用 from 导入模块 从模块中导入所有内容 使用导入模块 使用导入 * dir() 函数 包 PythonModuleSearchPath 在导入中使用
python 编程语言允许您使用多处理或多线程。在本教程中,您将学习如何使用 Python 编写多线程应用程序。 什么是线程? 线程是并发编程的执行单元。多线程是一种允许 CPU 同时执行一个进程的多个任务的技术。这些线程可以单独执行,同时共享它们的进程资源。 什么是进程? 进程基本上是正在执行的程序。当您在计算机中启动应用程序(如浏览器或文本编辑器)时,操作系统会创建一个 进程。 什么是 Python 中的多线程? Python 中的多线程 编程是一种众所周知的技术,其中一个进程中的多个线程与主线程共享它们的数据空间,这使得线程内的信息共享和通信变得容易和高效。线程比进程轻。多线
Python