[oeasy]python0135_命名惯用法_name_convention

简介: [oeasy]python0135_命名惯用法_name_convention

命名惯用法 回忆上次内容

  • 上次 了解了isidentifier的细节
  • 关于 关键字
  • 关于 下划线


  • 如何查询 变量所指向的地址?
  • id


  • 如何查询 已有的各种变量?
  • locals


  • 如果 用一个变量a的值
  • 给另一个变量b 赋值
  • 是什么样的过程 呢??🤔


指向

  • 声明变量a 并赋值为1
  • 是个数字变量
  • 是一个容器
  • 指向地址的值为1


添加图片注释,不超过 140 字(可选)

  • 声明b变量
  • 并且把a所指向的地址
  • 赋给容器b


  • 这样a和b指向同一个地址
  • 如果再把2赋给a呢?

再赋值

  • 当对a重新赋值的时候
  • a指向一个新的地址
  • b仍然指向原来的地址


添加图片注释,不超过 140 字(可选)

  • 那可以 在一行快速对两个变量 进行赋值 么?
  • 连等 赋值 可以吗?
  • a = b = 3



连等赋值

  • 可以一次赋值 好几个变量

添加图片注释,不超过 140 字(可选)

  • 确实可以
  • 这样 也可以 提高效率


添加图片注释,不超过 140 字(可选)

  • 其实 这两个等号
  • 相当于 两次声明并赋值
  • 先算的 是左边的
  • b = 3


  • 后算的 是右边的
  • a = b



  • 能否同时给两个变量赋不同的值?

一行赋值

添加图片注释,不超过 140 字(可选)

  • 这种情况经过一个解包过程
  • UNPACK过程
  • 将(3, 5)进行解包


  • 然后分别STORE进a, b
  • a, b 这些标识符还是比较简单的
  • 如果一个变量中有两个以上的单词组成
  • 比如说this year


  • 这个变量名应该怎么写呢?

大小写惯例

  • 关于单词的大小写方式
  • 叫做case convention
  • 大小写惯例



  • 有一些套路的

添加图片注释,不超过 140 字(可选)

  • 都有哪些 命名惯用法 呢?

三大标识符惯用法

  • 帕斯卡
  • 所有单词首字母大写
  • ThisYear
  • java中很常见的类名和变量名


  • 小驼峰
  • 首单词都小写,后面的首字母大写
  • setThisYear
  • java中的函数经常这么写


  • 蛇形
  • this_year


添加图片注释,不超过 140 字(可选)

  • python选的是哪个呢?

蛇形

添加图片注释,不超过 140 字(可选)

  • python几乎所有的标识符都用的是蛇形
  • 变量名
  • 函数名
  • 方法名
  • 模块名
  • 包名


添加图片注释,不超过 140 字(可选)

  • python为什么这么偏爱蛇形呢?

溯源

  • PASCAL本质上是驼峰类中的大驼峰

添加图片注释,不超过 140 字(可选)

  • 后来c语言和unix的出现
  • 同时带了一种新的命名惯用法


新的惯用法

  • 这种惯例出现在c、unix的源代码中
  • 也出现在The C Programming Language 这本书里面


添加图片注释,不超过 140 字(可选)

  • 以下划线作为分隔符
  • 很像空格但不是空格


  • 但是他和蛇有什么关系

蛇形命名

  • 蛇形命名方式起源于 1960 年代
  • 那时它甚至还没有特定的名称
  • 就是被叫做"带下划线的小写命名"
  • lower_case_with_underscores


  • Guido不喜欢大写字母
  • 因为觉得大写字母很装
  • 小写字母很舒服
  • 单程序里面必须要表示分隔符
  • python 从 c 语言中借鉴了下划线的命名法
  • 这个分隔符_在python中无处不在
  • 比如__builtins____py_cache__
  • 这种命名法的名字为lower_case_with_underscores
  • 但这名字拗口而且很难记


  • 2002年
  • intel和微软的员工在内部交流的时候
  • 起了snake_case名字
  • 很像蛇匍匐在地上


  • 2004年
  • ruby社区里面 Gavin Kistner 开始在Usenet上使用
  • 并且流传开来


  • 2015年
  • 根据下划线派生的
  • 中划线和上划线(lisp-case, kebab-case)的命名法也出现了


多单词命名法格式

添加图片注释,不超过 140 字(可选)

  • 这些就是关于命名法的资料
  • 还记得我们曾经的show_time.py吗?
  • show_time 是 哪种 命名惯用法 呢?


  • 我们去总结一下吧

总结

  • 这次研究了 一行赋值多个变量
  • a = b = 5
  • a, b = 7, 8


  • 还研究了 标识符的惯用法
  • python使用的是
  • snake_case蛇形命名法
  • 用下划线 分隔开小写字母的 方法
  • 这样就可以 更合理地 命名变量了



  • 变量变量 能变的量
  • 我可以 通过键盘录入 变量的值 吗?🤔



目录
相关文章
|
2月前
|
人工智能 Shell 开发工具
[oeasy]python062_在python中完成输入和输出_input_print
本文介绍了在Python中使用`input()`和`print()`函数完成输入和输出操作的基础知识。通过编写简单的程序,如问候用户和统计苹果数量,演示了如何添加提示信息、处理用户输入并输出结果。同时,回顾了上一次课程内容,包括`input`函数的参数和提示词的使用。文中还展示了如何在vim编辑器中编写和运行Python代码,并对vim和shell的基本操作进行了总结。最后提供了相关学习资源链接,方便读者进一步学习。
134 66
|
2天前
|
Shell Python
[oeasy]python072_名字空间是怎么玩的_from_import_as_导入_namespace
本文介绍了Python中名字空间和模块导入的使用方法。主要内容包括: 1. **回忆上次内容**:回顾了之前导入系统模块(如`__hello__`、`time`)和自定义模块(如`my_file`),并介绍了如何导入和使用模块中的变量。 2. **从shell开始**:展示了如何在命令行中编辑和切换文件,以及如何通过`import`语句引入模块。 3. **修改oeasy.py**:演示了如何通过`import my_file`导入模块,并将模块中的`pi`赋值给本地变量`pi`。 4. **locals()函数**:解释了如何使用`locals()`查看当前作用域内的本地变量及其值。
21 8
|
1月前
|
人工智能 Shell 开发工具
[oeasy]python065python报错怎么办_try_试着来_except_发现异常
本文介绍了Python中处理异常的基本方法,重点讲解了`try`和`except`的用法。通过一个计算苹果重量的小程序示例,展示了如何捕获用户输入错误并进行处理。主要内容包括: 1. **回顾上次内容**:简要回顾了Shell环境、Python3游乐场和Vim编辑器的使用。 2. **编写程序**:编写了一个简单的程序来计算苹果的总重量,但发现由于输入类型问题导致结果错误。 3. **调试与修正**:通过调试发现输入函数返回的是字符串类型,需要将其转换为整数类型才能正确计算。
55 32
|
12天前
|
人工智能 自然语言处理 Shell
[oeasy]python070_如何导入模块_导入模块的作用_hello_dunder_双下划线
本文介绍了如何在Python中导入模块及其作用,重点讲解了`__hello__`模块的导入与使用。通过`import`命令可以将外部模块引入当前环境,增强代码功能。例如,导入`__hello__`模块后可输出“Hello world!”。此外,还演示了如何使用`help()`和`dir()`函数查询模块信息,并展示了导入多个模块的方法。最后,通过一个实例,介绍了如何利用`jieba`、`WordCloud`和`matplotlib`模块生成词云图。总结来说,模块是封装好的功能部件,能够简化编程任务并提高效率。未来将探讨如何创建自定义模块。
32 8
|
9天前
|
缓存 Shell 开发工具
[oeasy]python071_我可以自己做一个模块吗_自定义模块_引入模块_import_diy
本文介绍了 Python 中模块的导入与自定义模块的创建。首先,我们回忆了模块的概念,即封装好功能的部件,并通过导入 `__hello__` 模块实现了输出 "hello world!" 的功能。接着,尝试创建并编辑自己的模块 `my_file.py`,引入 `time` 模块以获取当前时间,并在其中添加自定义输出。
21 4
|
27天前
|
数据库 Python
[oeasy]python066_如何捕获多个异常_try_否则_else_exception
本文介绍了Python中`try...except...else`结构的使用方法。主要内容包括: 1. **回顾上次内容**:简要复习了`try`和`except`的基本用法,强调了异常处理的重要性。 2. **详细解释**: - `try`块用于尝试执行代码,一旦发现错误会立即终止并跳转到`except`块。 - `except`块用于捕获特定类型的异常,并进行相应的处理。 - `else`块在没有异常时执行,是可选的。 3. **示例代码**:通过具体例子展示了如何捕获不同类型的异常(如`ValueError`和`ZeroDivisionError`),并解释了异常处理
53 24
|
3月前
|
Unix Linux 程序员
[oeasy]python053_学编程为什么从hello_world_开始
视频介绍了“Hello World”程序的由来及其在编程中的重要性。从贝尔实验室诞生的Unix系统和C语言说起,讲述了“Hello World”作为经典示例的起源和流传过程。文章还探讨了C语言对其他编程语言的影响,以及它在系统编程中的地位。最后总结了“Hello World”、print、小括号和双引号等编程概念的来源。
130 80
|
19天前
|
人工智能 数据库 开发者
[oeasy]python068_异常处理之后做些什么_try语句的完全体_最终_finally
介绍了 Python 中 `try` 语句的完全体,包括 `try`、`except`、`else` 和 `finally` 子句的使用。通过实例展示了如何捕获异常并输出详细的错误信息,如文件名和行号。特别强调了 `finally` 子句的作用,无论是否发生异常,`finally` 都会执行,常用于清理操作。最后总结了 `try` 语句的四个部分及其应用场景,并简要提及了 Python 社区的决策机制。 #try #except #else #finally
23 1
|
1月前
|
缓存 Shell 开发工具
[oeasy]python064_命令行工作流的总结_vim_shell_python
本文总结了命令行工作流中的关键工具和操作,包括vim、shell和Python。主要内容如下: 1. **上次回顾**:完成了输入输出的代码编写,并再次练习了vim的使用。 2. **shell基础**:介绍了shell环境及其基本命令,如`pwd`、`cd`、`ll -l`等。 3. **Python游乐场**:通过`python3`命令进入Python交互环境,可以进行简单计算和函数调用,常用函数有`help`、`ord`、`chr`等。 4. **vim编辑器**:详细讲解了vim的三种模式(正常模式、插入模式、底行命令模式)及其切换方法,以及常用的底行命令如`:w`、`:q`、`
87 15
|
16天前
|
人工智能 数据库连接 开发工具
[oeasy]python069_当前作用域都有些什么_列表dir_函数_builtins
本文介绍了Python中`dir()`函数的使用方法及其作用。`dir()`可以列出当前作用域内的所有变量和成员,类似于`locals()`,但`dir()`不仅限于本地变量,还能显示模块中的所有成员。通过`dir(__builtins__)`可以查看内建模块中的所有内建函数,如`print`、`ord`、`chr`等。此外,还回顾了`try-except-finally`结构在数据库连接中的应用,并解释了为何`print`函数可以直接使用而无需导入,因为它位于`__builtins__`模块中。最后,简要提及了删除`__builtins__.print`的方法及其影响。
29 0

热门文章

最新文章