一篇文章弄懂Python关键字、标识符和变量
作者:海拥 发布时间:2022-11-01 17:44:42
目录
前言
🎪 一、Python 关键字
🎢 二、Python标识符
🎠 2.1 在 Python 中创建标识符的指南
🎡 2.2 测试标识符是否有效
🧵 2.3 标识符命名的最佳实践
🎯 三、Python 变量
总结
前言
本快速教程的目的是教您有关Python 关键字、标识符和变量的知识。这些是 Python 编程的基本构建块。因此,您必须了解有关它们的一切。
Python 关键字是一个独特的编程术语,旨在执行某些操作。Python 中有多达 35 个这样的关键字,每个都有不同的用途。他们一起构建了 Python 语言的词汇表。
它们代表 Python 程序的语法和结构。由于它们都是保留的,因此您不能使用它们的名称来定义变量、类或函数。
🎪 一、Python 关键字
关键字是保留并具有特定含义的特殊词。Python 有一组不能在程序中用作变量的关键字。
Python 中的所有关键字都区分大小写。因此,在代码中使用它们时必须小心。我们刚刚在这里捕获了可能的 Python 关键字的快照。
使用 Python Shell 显示 Python 关键字
这是一个很长的清单,需要一次性记住。我们在这里提到它的目的只是让您初步了解可用的关键字。但是,我们将在其余教程中介绍它们中的每一个。您无需急于记住它们,而是尝试逐步学习使用它们。
还有一点你应该注意,上面的列表可能会改变。该语言可以摆脱一些旧的关键字,并在未来的版本中引入新的关键字。
因此,要获取最新列表,您可以打开 Python shell 并运行以下命令,如下面的代码片段所示。
>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>>
🎢 二、Python标识符
Python 标识符是用户定义的名称,用于表示变量、函数、类、模块或任何其他对象。如果您为 Python 中的可编程实体分配一些名称,那么它在技术上只是称为标识符。
Python 语言为程序员制定了一套规则来创建有意义的标识符。
🎠 2.1 在 Python 中创建标识符的指南
1.为了形成的标识符,使用的字母序列中任一小写 (a到z)或大写 (A至Z) 。但是,您也可以在编写标识符时混淆数字(0 到 9)或下划线 (_)。
例如-的名字,像 shapeClass, shape_1和 upload_shape_to_db都是有效的标识符。
2.不能使用数字作为标识符名称的开头。它会导致语法错误。
例如 – 名称0Shape不正确,但 shape1是有效标识符。
3.此外,关键字是保留的,因此您不应将它们用作标识符。
>>> for=1
SyntaxError: invalid syntax
>>> True=1
SyntaxError: can't assign to keyword
4.Python 标识符也不能有特殊字符['.', '!', '@', '#', '$', '%']。禁止使用这些符号。
>>> @index=0
SyntaxError: invalid syntax
>>> isPython?=True
SyntaxError: invalid syntax
5.Python 文档说你可以有一个无限制长度的标识符。但这只是半真半假。
使用大名称(超过 79 个字符)会导致违反PEP-8标准设置的规则。它会提示
Limit all lines to a maximum of 79 characters.
🎡 2.2 测试标识符是否有效
您可以使用keyword.iskeyword()函数来测试 Python 标识符是否有效 。如果关键字正确,则返回“True”,否则 返回 “ False”。
请参考以下片段。
>>> import keyword
>>> keyword.iskeyword("techbeamers")
False
>>> keyword.iskeyword("try")
True
>>>
另一种检查标识符是否有效的有用方法是调用 str.isidentifier()函数。但它仅在Python 3.0及更高版本中可用。
>>> 'techbeamers'.isidentifier()
True
>>> '1techbeamers'.isidentifier()
False
>>> 'techbeamers.com'.isidentifier()
False
>>> 'techbemaers_com'.isidentifier()
True
🧵 2.3 标识符命名的最佳实践
最好让类名以大写字母开头。所有其他标识符应以小写字母开头。
使用('_')下划线作为首字母来声明私有标识符。
不要使用 “_”作为标识符中的前导和尾随字符。由于 Python 内置类型已经使用了这种表示法。
避免使用只有一个字符的名称。相反,取有意义的名字。
例如——虽然 i = 1 是有效的,但写 iter = 1 或 index = 1 会更有意义。
您可以使用下划线将多个单词组合成一个合理的名称。
例如 – count_no_of_letters。
🎯 三、Python 变量
Python 中的变量代表一个实体,其值可以在需要时更改。从概念上讲,它是一个保存实际值的内存位置。我们可以通过查询实体从我们的代码中检索值。
但它需要为该内存位置分配一个标签,以便我们可以引用它。我们将其称为编程术语中的变量。
以下是有关 Python 变量的一些关键事实。这些将帮助程序员有效地使用它们。
1.变量不需要声明。但是,您必须在使用前对其进行初始化。
例如 -
test = 10
2.上述表达式将导致以下动作。
创建一个对象来表示值10。
如果变量(test)不存在,那么它将被创建。
将变量与对象关联,以便它可以引用值。
变量'test'是对值'10'的引用。请参考下图。
例如 -
| ~~~~~ | ----- ~~~~~~~~~ ------- ****
( test ) ----- Reference ------- ** 10 **
| ~~~~~ | ----- ~~~~~~~~~ ------- ****
Variable ----- ~~~~~~~~~~ ------- Object
3.每当表达式发生变化时,Python 都会将一个新对象(一块内存)与引用该值的变量相关联。旧的去垃圾收集器。
例如 -
>>> test = 10
>>> id(test)
1716585200
>>> test = 11
>>> id(test)
1716585232
>>>
4.此外,为了优化,Python 构建了一个缓存并重用了一些不可变对象,例如小整数和字符串。
5.一个对象只是一个内存区域,可以容纳以下内容。
实际的对象值。
反映对象类型的类型指示符。
确定何时可以回收对象的引用计数器。
6.拥有类型的是对象,而不是变量。但是,变量可以根据需要保存不同类型的对象。
例如 -
>>> test = 10
>>> type(test)
<class 'int'>
>>> test = 'techbeamers'
>>> type(test)
<class 'str'>
>>> test = {'Python', 'C', 'C++'}
>>> type(test)
<class 'set'>
>>>
来源:https://juejin.cn/post/6984229567380586504
猜你喜欢
- 版本Sublime Text v4.0(4143) 所需软件Sublime Text v4.0(4143)下载地址:https://www.
- 项目中想使用以前的代码,或者什么样的需求致使你需要导入外部的包如果是web 下,比如说django ,那么你新建一个app,把你需要导入的说
- 第一种 #This File was made using the WinMySQLAdmin 1.4 Tool #2004-2-23 16
- 本文接上一篇博客python实现的八大排序算法part1,将继续使用python实现八大排序算法中的剩余四个:快速排序、堆排序、归并排序、基
- 仪表盘仪表盘的效果我只能说炫酷而已,如果想要运用在实际的场景中,我其实也不清楚那个场景比较适合,但是pyecharts毕竟是炫酷可视化的利器
- 前言引用一张比较清晰易懂的图php伪协议是php自己支持的一种协议与封装协议,简单来说就是php定义的一种特殊访问资源的方法。常见的php伪
- selenuim模块定位方法1,我们想要操作html页面上的元素,首先必须要定位到这个元素上。每个元素都有他各自的属性,比如id,name,
- “ 这是MySQL系列笔记的第十三篇,文章内容均为本人通过实践及查阅资料相关整理所得,可用作新手入门指南,或者
- 避坑1:RTX30系列显卡不支持cuda11.0以下版本,具体上限版本可自行查阅:方法一,在cmd中输入nvidia-smi查看方法二:由此
- 墙上时钟与单调时钟墙上时钟墙上时钟也称为墙上时间。大多是1970年1月1日(UTC)以来的秒数和毫秒数。墙上时间可以和NTP(Network
- 本文中,abigale代表查询字符串,ada代表数据表名,alice代表字段名。技巧一:问题类型:ACCESS数据库字段中含有日文片假名或其
- 最近在工作中遇到了一个小问题,如果要将字符串型的数据转换成dict类型,我第一时间就想到了使用json函数。但是里面出现了一些问题1、通过j
- 安装先下载源码,地址:ps://pypi.python.org/pypi/IPy/">https://pypi.python
- 本文实例讲述了Python Web框架之Django框架cookie和session用法。分享给大家供大家参考,具体如下:part 1 概念
- Go 语言中 goroutine + channel 通过通信的方式来共享内存,从而实现并发编程。但同时 Go 也提供了传统通过共享变量,也
- def ddns():"""用当前ip更新ddns"""headers = {&
- 如果网页处于焦点状态返回true,否则返回fasle 什么是焦点?焦点是指用户是否活动在该页面.确切的说鼠标是否在该网页内活动.或者说该网页
- 一、DataFrame数据准备增、删、改、查的方法有很多很多种,这里只展示出常用的几种。参数inplace默认为False,只能在生成的新数
- torch.nn.Conv2d中自定义权重torch.nn.Conv2d函数调用后会自动初始化weight和bias,本文主要涉及如何自定义
- mysql在查询上千万级数据的时候,通过索引可以解决大部分查询优化问题。但是在处理上亿数据的时候,索引就不那么友好了。数据表(日志)是这样的