[oeasy]python0135_命名惯用法_name_convention
- 上次 了解了isidentifier的细节
- 关于 关键字
- 关于 下划线
- 如何查询 变量所指向的地址?
- id
- 如何查询 已有的各种变量?
- locals
- 如果 用一个变量a的值
- 给另一个变量b 赋值
- 是什么样的过程 呢??
- 声明变量a 并赋值为1
- 是个数字变量
- 是一个容器
- 指向地址的值为1
- 声明b变量
- 并且把a所指向的地址
- 赋给容器b
- 这样a和b指向同一个地址
- 如果再把2赋给a呢?
- 当对a重新赋值的时候
- a指向一个新的地址
- b仍然指向原来的地址
- 那可以 在一行快速对两个变量 进行赋值 么?
- 连等 赋值 可以吗?
- a = b = 3
- 可以一次赋值 好几个变量
- 确实可以
- 这样 也可以 提高效率
- 其实 这两个等号
- 相当于 两次声明并赋值
- 先算的 是左边的
- b = 3
- 后算的 是右边的
- a = b
- 能否同时给两个变量赋不同的值?
- 这种情况经过一个解包过程
- UNPACK过程
- 将(3, 5)进行解包
- 然后分别STORE进a, b
- a, b 这些标识符还是比较简单的
- 如果一个变量中有两个以上的单词组成
- 比如说this year
- 这个变量名应该怎么写呢?
- 关于单词的大小写方式
- 叫做case convention
- 大小写惯例
- 有一些套路的
- 都有哪些 命名惯用法 呢?
- 帕斯卡
- 所有单词首字母大写
- ThisYear
- java中很常见的类名和变量名
- 小驼峰
- 首单词都小写,后面的首字母大写
- setThisYear
- java中的函数经常这么写
- 蛇形
- this_year
- python选的是哪个呢?
- python几乎所有的标识符都用的是蛇形
- 变量名
- 函数名
- 方法名
- 模块名
- 包名
- python为什么这么偏爱蛇形呢?
- PASCAL本质上是驼峰类中的大驼峰
- 后来c语言和unix的出现
- 同时带了一种新的命名惯用法
- 这种惯例出现在c、unix的源代码中
- 也出现在The C Programming Language 这本书里面
- 以下划线作为分隔符
- 很像空格但不是空格
- 但是他和蛇有什么关系
- 蛇形命名方式起源于 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)的命名法也出现了
- 这些就是关于命名法的资料
- 还记得我们曾经的show_time.py吗?
- show_time 是 哪种 命名惯用法 呢?
- 我们去总结一下吧
- 这次研究了 一行赋值多个变量
- a = b = 5
- a, b = 7, 8
- 还研究了 标识符的惯用法
- python使用的是
- snake_case蛇形命名法
- 用下划线 分隔开小写字母的 方法
- 这样就可以 更合理地 命名变量了
- 变量变量 能变的量
- 我可以 通过键盘录入 变量的值 吗?
- 我们下次再说!
[oeasy]python0135_命名惯用法_name_convention的更多相关文章
- RAII惯用法:C++资源管理的利器(转)
RAII惯用法:C++资源管理的利器 RAII是指C++语言中的一个惯用法(idiom),它是“Resource Acquisition Is Initialization”的首字母缩写.中文可将其翻 ...
- 做个地道的c++程序猿:copy and swap惯用法
如果你对外语感兴趣,那肯定听过"idiom"这个词.牛津词典对于它的解释叫惯用语,再精简一些可以叫"成语".想要掌握一门语言,其中的"成语" ...
- Erase-Remove 惯用法
看到<Effective STL>条款 9 的时候想到了我以前复习的"如何正确使用迭代器删除元素",我面试时使用的也是里面的方法,看面试官的反应好像也没有什么问题,还问 ...
- C++惯用法:通过成员模板实现隐式转换(Coercion 强迫 by Member Template)
Intent To increase the flexibility of a class template's interface by allowing the class template to ...
- ibatis.net:惯用法
使用<![CDATA[]]>保持SQL格式 IN 查询
- C++之RAII惯用法
http://blog.csdn.net/hunter8777/article/details/6327704 C++中的RAII全称是“Resource acquisition is initial ...
- Python惯用法
目录 1. 不要使用可变类型作为参数的默认值 1. 不要使用可变类型作为参数的默认值 摘自<流畅的Python>8.4.1 class HauntedBus: ""&q ...
- golang channel 用法转的
一.Golang并发基础理论 Golang在并发设计方面参考了C.A.R Hoare的CSP,即Communicating Sequential Processes并发模型理论.但就像John Gra ...
- C语言宏高级用法
1.前言 今天看代码时候,遇到一些宏,之前没有见过,感觉挺新鲜.如是上网google一下,顺便总结一下,方便以后学习和运用.C语言程序中广泛的使用宏定义,采用关键字define进行定义,宏只是一种简 ...
- Golang Channel用法简编
转自:http://tonybai.com/2014/09/29/a-channel-compendium-for-golang/ 在进入正式内容前,我这里先顺便转发一则消息,那就是Golang 1. ...
随机推荐
- 实用!!!!springBoot加入微信扫码支付功能,有一说一还是挺有意思的
基于springboot微服务加入微信支付的功能 在线微信支付开发文档: https://pay.weixin.qq.com/wiki/doc/api/index.html native扫码支付方式: ...
- 微信开发者工具拉取gitlab远程代码报Pull failed原因分析:
可能出现的原因: 本地主机上没有安装node node下载地址: 1 https://nodejs.org/zh-cn/download/ 没有保存gitlab的用户名和密码
- RunnerGo V4.6.0 新增功能介绍
RunnerGo 最新V4.6.0版本不仅对原有功能进行了深度优化和改进,还新增了一些新功能. UI 插件:浮窗升级,优化浏览体验 此次更新UI插件全新升级至V2.1版本.新版取消了页面内右下角按钮的 ...
- 直播相关-搭建直播流服务器nodejs
一.安装nodejs环境 去nodejs官方网站下载安装包 https://nodejs.org/en/#download 安装完成之后测试: LUNLI-MC1:~ lunli$ node -v v ...
- Oracle优化神技之临时表
Oracle临时表在处理临时数据.会话数据隔离和复杂查询优化方面非常有用. 其底层逻辑是通过Oracle特殊的临时表来减少I/O操作和日志开销,提高了数据库性能和查询效率.开发者可以根据具体需求和场景 ...
- JavaServlet和后端的搭建(以Tomcat为例)
目录 Servlet 前端如何才能访问到后端? 后端开发准备工作(配置Tomcat) 对象的生命周期 后端平台的搭建 创建Web项目(前提搭建好Tomcat配置) 创建Java文件 配置Web.xml ...
- MySQL 导出一条数据的插入语句
1.MySQL 导出一条数据的插入语句的方法 在MySQL中,如果我们想要导出一条数据的插入语句,我们可以使用SELECT ... INTO OUTFILE语句(但这通常用于将整个表或查询结果导出到一 ...
- 剑指Offer-65.矩阵中的路径(C++/Java)
题目: 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径.路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子.如果一条路径经过了矩阵中的 ...
- 流程控制之case
1.case语句作用 case和if一样,都是用于处理多分支的条件判断 但是在条件较多的情况,if嵌套太多就不够简洁了 case语句就更简洁和规范了 2.case用法参考 常见用法就是如根据用户输入的 ...
- rust 程序设计笔记(2)所有权 & 引用
所有权 数据存储在栈和堆上,存放在栈上的数据都是已知所占据空间的 突然的问题 // 内存中的栈是怎么存储数据的? 好的,想象一下你有一摞盘子.你只能从上面放盘子,也只能从上面拿盘子,这就是栈的工作方式 ...