1. print( 坑的信息 )

  • 挖坑时间:2019/01/04
  • 明细
坑的编码 内容
Py002-2 Python3 与“关键字”、“保留字”、“预留字”的关系

2. 开始填坑

2.1 问题的由来

大一时,老师教了 C,后来因为兴趣接触过一些编程语言,“先入为主”,感觉“关键字”、“函数”等看着比“保留字”、“方法”舒服一点。

接触 Java 后,知道了“关键字”与“保留字”存在音译以外的不同:比如 goto、const 等 Java 中的“保留字”并不在“关键字”之列,虽然它们没有实际作用,但写代码时不能用它们命名。它们这些“保留字”,就像有些电影公司先买下版权,自己不确定什么时候拍,但要确保别人拍不了;如果哪一天要拍,可以立马开拍。

那么,Python3 中的“关键字”、“保留字”,还有“预留字”,到底有什么关系?

2.2 网上搜索

(我姑且先称其为“关键字”)

>>> help("keywords")
  • 我发现,许多博主更喜欢用以下方法:
# 方法 1
>>> import keyword
>>> keyword.kwlist
# 方法 2
>>> import keyword
>>> print(keyword.kwlist)
  • 我傻傻地数了一下,他们列举出来的是 33 个关键字,而我自己运行出来的是 35 个。
  • 我查了一下版本
    • Python3.7 的第一版大概是 2018 年年初发布的
    • Python3.7 有 35 个关键字
    • 33 个关键字的版本,可能是 Python3.4
  • 其实不用数,在 Python 的官网中点 What’s New In Python 3.7 然后查找 keywords 就能看到

2.3 结论

  1. Python3.7 的“关键字”、“保留字”、“预留字”是同一种东西

    • 一方面,英文都是 keywords
    • 另一方面,Python 有意方便初学者学习,不会在这儿设卡
  2. 如果想单独查看这些关键字,可以使用 help("a_keyword"),如
>>> help("async")

2.4 后记

倘若阁下发现在下错误之处,还请不吝赐教!谢谢!

[Python3 填坑] 003 关键字?保留字?预留字?的更多相关文章

  1. [Python3 填坑] 006 “杠零”,空字符的使用

    目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 \0 是空字符,输出时看不到它,但它占 1 个字符的长度 2.2 \0 "遇八进制失效" 2.3 \0 与 '' 不 ...

  2. [Python3 填坑] 009 深拷贝与浅拷贝

    目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 Python3.7 官方文档 2.2 赋值.切片与 copy() 分析 分析 分析 分析 2.3 copy 模块 分析 分析 2.4 小 ...

  3. [Python3 填坑] 004 关于八进制

    目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 问题的由来 2.2 问题的解决 2.2.1 先说结论 2.2.2 八进制的用途 2.2.3 少废话,上例子 1. print( 坑的信息 ...

  4. [Python3 填坑] 001 格式化符号 & 格式化操作符的辅助指令

    目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 Python 格式化符号表 举例说明 (1) %c (2) %s 与 %d (3) %o (4) %x (5) %f (6) %e (7 ...

  5. [Python3 填坑] 012 字典的遍历在 Python2 与 Python3 中区别

    目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 Python2 中字典的遍历 2.2 Python3 中字典的遍历 2.3 结论 1. print( 坑的信息 ) 挖坑时间:2019/ ...

  6. [Python3 填坑] 005 如何“响铃”

    目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 问题的由来 2.2 问题的解决 1. print( 坑的信息 ) 挖坑时间:2019/01/08 明细 坑的编码 内容 Py004-2 ...

  7. [Python3 填坑] 018 组装类的几个例子

    目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 MetaClass 举例 2.2 type 举例 2.3 MetaClass 举例 1. print( 坑的信息 ) 挖坑时间:2019 ...

  8. [Python3 填坑] 017 实例方法、静态方法、类方法的区别

    目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 先上例子 2.2 分析 1. print( 坑的信息 ) 挖坑时间:2019/04/07 明细 坑的编码 内容 Py024-1 实例方法 ...

  9. [Python3 填坑] 016 对 __getattr__ 和 __setattr__ 举例

    目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 __getattr__ 2.2 __setattr__ 1. print( 坑的信息 ) 挖坑时间:2019/04/07 明细 坑的编码 ...

随机推荐

  1. 二进制sersync部署安装

    一.为什么要用rsync+sersync架构? 1.sersync是基于inotify开发的,类似于inotify-tools的工具 2.sersync可以记录下被监听目录中发生变化的(包括增加.删除 ...

  2. Flask【第1篇】:Flask介绍

    Flask入门 一.Flask介绍(轻量级的框架,非常快速的就能把程序搭建起来) Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Wer ...

  3. Android PdfViewer案例使用

    今天按项目要求找了一个android的PDF控件,各种操作效果都非常好,在这里和大家分享一下. com.joanzapata.pdfview:android-pdfview  该PDF控件加载大存储的 ...

  4. 【NOIP2016提高A组8.11】自然数

    题目 分析 \(O(n)\)求出mex(1,i)(1<=i<=n): 虽然0<=ai<=10^9,但只有n个数,所以mex一定小于等于n for(long long j=1;j ...

  5. 【GDOI2014模拟】Tree

    题目 Wayne 在玩儿一个很有趣的游戏.在游戏中,Wayne 建造了N 个城市,现在他想在这些城市间修一些公路,当然并不是任意两个城市间都能修,为了道路系统的美观,一共只有M 对城市间能修公路,即有 ...

  6. A1011

    找最大的,然后按规定计算后输出. 没啥可说的,除非犯了愚蠢的错误(比如把j写成i这种),按题目要求写就是了. #include<cstdio> int main(){ ]={'W','T' ...

  7. 小程序-登录-token

    1.前端调用wx.login()获取code值 2.前端通过调用wx.getUserInfo获取iv.rawData.signature.encryptedData等加密数据,传递给后端 3.服务器通 ...

  8. sh_09_格式化输出

    sh_09_格式化输出 # 定义字符串变量 name,输出 我的名字叫 小明,请多多关照! name = "大小明" print("我的名字叫 %s,请多多关照!&quo ...

  9. 安装JDK ,提示 错误1316 指定的账户已存在

    基于情况: 安装了一个JDK 后,在文件目录中删除了相关文件,之后再次安装,提示  错误1316 指定的账户已存在 造成原因:安装JDK,相当于安装了一个软件,要使用系统的软件卸载功能卸载,不能只删除 ...

  10. 记录redis 存放JSON字符串,在并发操作时读-改-写问题

    问题描述: 这里涉及到的问题其实就是普遍的读-改-写,redis可以保证每个操作的原子性,但是无法保证多个操作的原子性,解决的方法可以使用redis提供的multi和watch命令,具体使用如下:1. ...