python代码规范is==

1.在python 中is和= = 的区别

Python中的对象包含三要素:id、type、value

其中id用来唯一标识一个对象,type标识对象的类型,value是对象的值

is判断的是a对象是否就是b对象,是通过id来判断的

==判断的是a对象的值是否和b对象的值相等,是通过value来判断的

如下代码或许可以帮助你理解.

>>> a = 1

>>> b = 1.0

>>> a is b

False

>>> a == b

True

>>> id(a)

12777000

>>> id(b)

14986000

>>> a = 1

>>> b = 1

>>> a is b

True

>>> a == b

True

>>> id(a)

12777000

>>> id(b)

12777000

2.在python 中is和= = 的区别

Python中的对象包含三要素:id、type、value其中id用来唯一标识一个对象,type标识对象的类型,value是对象的值is判断的是a对象是否就是b对象,是通过id来判断的==判断的是a对象的值是否和b对象的值相等,是通过value来判断的如下代码或许可以帮助你理解。

>>> a = 1>>> b = 1.0>>> a is bFalse>>> a == bTrue>>> id(a)12777000>>> id(b)14986000>>> a = 1>>> b = 1>>> a is bTrue>>> a == bTrue>>> id(a)12777000>>> id(b)12777000。

3.如何规范的编写python代码

PEP8 Python 编码规范 一 代码编排1 缩进。

4个空格的缩进(编辑器都可以完成此功能),不使用Tap,更不能混合使用Tap和空格。2 每行最大长度79,换行可以使用反斜杠,最好使用圆括号。

换行点要在操作符的后边敲回车。3 类和top-level函数定义之间空两行;类中的方法定义之间空一行;函数内逻辑无关段落之间空一行;其他地方尽量不要再空行。

二 文档编排1 模块内容的顺序:模块说明和docstring—import—globals&constants—其他定义。其中import部分,又按标准、三方和自己编写顺序依次排放,之间空一行。

2 不要在一句import中多个库,比如import os, sys不推荐。3 如果采用from XX import XX引用库,可以省略'module.',都是可能出现命名冲突,这时就要采用import XX。

三 空格的使用 总体原则,避免不必要的空格。1 各种右括号前不要加空格。

2 逗号、冒号、分号前不要加空格。3 函数的左括号前不要加空格。

如Func(1)。4 序列的左括号前不要加空格。

如list[2]。5 操作符左右各加一个空格,不要为了对齐增加空格。

6 函数默认参数使用的赋值符左右省略空格。7 不要将多句语句写在同一行,尽管使用‘;’允许。

8 if/for/while语句中,即使执行语句只有一句,也必须另起一行。四 注释 总体原则,错误的注释不如没有注释。

所以当一段代码发生变化时,第一件事就是要修改注释!注释必须使用英文,最好是完整的句子,首字母大写,句后要有结束符,结束符后跟两个空格,开始下一句。如果是短语,可以省略结束符。

1 块注释,在一段代码前增加的注释。在‘#’后加一空格。

段落之间以只有‘#’的行间隔。比如:# Description : Module config.# # Input : None## Output : None2 行注释,在一句代码后加注释。

比如:x = x + 1 # Increment x 但是这种方式尽量少使用。3 避免无谓的注释。

五 文档描述1 为所有的共有模块、函数、类、方法写docstrings;非共有的没有必要,但是可以写注释(在def的下一行)。2 如果docstring要换行,参考如下例子,详见PEP 257"""Return a foobang Optional plotz says to frobnicate the bizbaz first.""" 六 命名规范 总体原则,新编代码必须按下面命名风格进行,现有库的编码尽量保持风格。

1 尽量单独使用小写字母'l',大写字母'O'等容易混淆的字母。2 模块命名尽量短小,使用全部小写的方式,可以使用下划线。

3 包命名尽量短小,使用全部小写的方式,不可以使用下划线。4 类的命名使用CapWords的方式,模块内部使用的类采用_CapWords的方式。

5 异常命名使用CapWords+Error后缀的方式。6 全局变量尽量只在模块内有效,类似C语言中的static。

实现方法有两种,一是__all__机制;二是前缀一个下划线。7 函数命名使用全部小写的方式,可以使用下划线。

8 常量命名使用全部大写的方式,可以使用下划线。9 类的属性(方法和变量)命名使用全部小写的方式,可以使用下划线。

9 类的属性有3种作用域public、non-public和subclass API,可以理解成C++中的public、private、protected,non-public属性前,前缀一条下划线。11 类的属性若与关键字名字冲突,后缀一下划线,尽量不要使用缩略等其他方式。

12 为避免与子类属性命名冲突,在类的一些属性前,前缀两条下划线。比如:类Foo中声明__a,访问时,只能通过Foo._Foo__a,避免歧义。

如果子类也叫Foo,那就无能为力了。13 类的方法第一个参数必须是self,而静态方法第一个参数必须是cls。

七 编码建议1 编码中考虑到其他python实现的效率等问题,比如运算符‘+’在CPython(Python)中效率很高,都是Jython中却非常低,所以应该采用.join()的方式。2 尽可能使用'is''is not'取代‘==’,比如if x is not None 要优于if x。

3 使用基于类的异常,每个模块或包都有自己的异常类,此异常类继承自Exception。4 异常中不要使用裸露的except,except后跟具体的exceptions。

5 异常中try的代码尽可能少。6 使用startswith() and endswith()代替切片进行序列前缀或后缀的检查。

7 使用isinstance()比较对象的类型。8 判断序列空或不空9 字符串不要以空格收尾。

10 二进制数据判断使用 if boolvalue的方式。

python代码规范is==

转载请注明出处代码入门网 » python代码规范is==

资讯

python自动化接口

阅读(15)

本文主要为您介绍python自动化接口,内容包括怎么基于python实现接口自动化,用python怎么写一个接口自动化框架,怎么基于python实现接口自动化。#!/usr/bin/env pythonimport sysstr = Truewhile (str):dig = int(input

资讯

python发微信消息

阅读(17)

本文主要为您介绍python发微信消息,内容包括如何用python给微信发信息,如何用python实现从传感器发送数据和消息到短信和微信等,如何用python实现从传感器发送数据和消息到短信和微信等。基于文本文档(Markdown) 设想好需要的基本需要的表、

资讯

python索引值

阅读(14)

本文主要为您介绍python索引值,内容包括python如何获取索引值例:a=['1','2','3','4','5','6']我想获取'5'的索引值,,如何在python列表中查找某个元素的索引,Python中的index一般是

资讯

windows执行python

阅读(14)

本文主要为您介绍windows执行python,内容包括windows怎么执行python命令,windows怎么执行python命令,如何在windows下编译执行python脚本。假设python安装目录为C盘根目录,版本为python2.6先确保是否在windows环境变量中设置了python路径(即p

资讯

python字节字符串

阅读(12)

本文主要为您介绍python字节字符串,内容包括Python2.7中字节字符串的处理求助,使用Python按字节分割字符串,Python里怎么把字符串转成字节。按行读取之后按原文件编码类型解码,插入完后按UTF-8解码写入文件以源文件为gbk为例,假设每5字符插入

资讯

浅拷贝python

阅读(13)

本文主要为您介绍浅拷贝python,内容包括python中浅拷贝和深拷贝的区别,python的复制,深拷贝和浅拷贝的区别,python深拷贝和浅拷贝的区别。这个问题其实网上解答已经很多了,最好说仔细点在什么地方不理解。下面一个例子可以看看:import copya

资讯

python日志监控

阅读(12)

本文主要为您介绍python日志监控,内容包括如何用python写监控日志函数,如何用python写监控日志函数,python怎么实现远程动态输出日志。def write_log(username,operation):写日志函数:param username:用户名:param ope

资讯

python中的init

阅读(12)

本文主要为您介绍python中的init,内容包括python中的init()是什么意思呢,Python中“init”的意义是什么,python中的init()是什么意思呢。Python中“__init__”的意义是在类实例创建的时候自动会被执行的。这里只是自己重定义了__init__的行为

资讯

python元素在list中

阅读(13)

本文主要为您介绍python元素在list中,内容包括在Python中怎么表示一个元素在一个list中的数量,python中List添加元素的几种方法,python查找一个元素在list里出现了多少次。##注意:最左边每个=表示一个空格def cnt(s1,s2):====n,len1,len2=0,

资讯

python中文分析

阅读(14)

本文主要为您介绍python中文分析,内容包括如何用Python中的NLTK对中文进行分析和处理,如何用Python中的NLTK对中文进行分析和处理,如何用python进行数据分析。最近正在用nltk 对中文网络商品评论进行褒贬情感分类,计算评论的信息熵(entropy)、

资讯

PythonExcel列

阅读(16)

本文主要为您介绍PythonExcel列,内容包括python怎样对excle的列进行读写操作,Python如何将一个列表写入到一个excel表中的一列,求Python代码,,怎样用python,读取excel中的一列数据。import xlwtf = xlwt.Workbook() #创建工作簿sheet1 = f.a

资讯

python执行函数

阅读(13)

本文主要为您介绍python执行函数,内容包括python的函数是怎么执行的,如何实现python条件执行函数,指定时间未执行过则自动执行一次,解释一下这个Python函数的执行过程。n=0时执行到了zhidaofor i in range(2,n),这个range是个空列表[],故一次

资讯

python显示

阅读(12)

本文主要为您介绍python显示,内容包括怎么用python显示一张图片,如何在python界面显示图片,如何在python界面显示图片。在 python 中除了用 opencv,也可以用 matplotlib 和 PIL 这两个库操作图片。本人偏爱 matpoltlib,

资讯

python变量的引用

阅读(15)

本文主要为您介绍python变量的引用,内容包括Python中的变量引用对象需注意的几点,怎么得到python里对自己引用的变量的名字,python如何引用其他模块中类的方法中的变量。给你介绍Python中普通引用和共享引用在引用对象中需要注意的点:普通引

资讯

python自动化接口

阅读(15)

本文主要为您介绍python自动化接口,内容包括怎么基于python实现接口自动化,用python怎么写一个接口自动化框架,怎么基于python实现接口自动化。#!/usr/bin/env pythonimport sysstr = Truewhile (str):dig = int(input

资讯

python发微信消息

阅读(17)

本文主要为您介绍python发微信消息,内容包括如何用python给微信发信息,如何用python实现从传感器发送数据和消息到短信和微信等,如何用python实现从传感器发送数据和消息到短信和微信等。基于文本文档(Markdown) 设想好需要的基本需要的表、

资讯

python索引值

阅读(14)

本文主要为您介绍python索引值,内容包括python如何获取索引值例:a=['1','2','3','4','5','6']我想获取'5'的索引值,,如何在python列表中查找某个元素的索引,Python中的index一般是

资讯

windows执行python

阅读(14)

本文主要为您介绍windows执行python,内容包括windows怎么执行python命令,windows怎么执行python命令,如何在windows下编译执行python脚本。假设python安装目录为C盘根目录,版本为python2.6先确保是否在windows环境变量中设置了python路径(即p

资讯

python字节字符串

阅读(12)

本文主要为您介绍python字节字符串,内容包括Python2.7中字节字符串的处理求助,使用Python按字节分割字符串,Python里怎么把字符串转成字节。按行读取之后按原文件编码类型解码,插入完后按UTF-8解码写入文件以源文件为gbk为例,假设每5字符插入

资讯

浅拷贝python

阅读(13)

本文主要为您介绍浅拷贝python,内容包括python中浅拷贝和深拷贝的区别,python的复制,深拷贝和浅拷贝的区别,python深拷贝和浅拷贝的区别。这个问题其实网上解答已经很多了,最好说仔细点在什么地方不理解。下面一个例子可以看看:import copya

资讯

python日志监控

阅读(12)

本文主要为您介绍python日志监控,内容包括如何用python写监控日志函数,如何用python写监控日志函数,python怎么实现远程动态输出日志。def write_log(username,operation):写日志函数:param username:用户名:param ope

资讯

python回车字符

阅读(13)

本文主要为您介绍python回车字符,内容包括python中怎么换行,怎么从第一行换到第二行的,Python代码回车符与换行符的区别,python换行符n怎么用。Windows换行符是\r\n,Unix/Linux的换行符为\n,Mac的换行符为\r,在python中,对换行符进行了

资讯

python黑客绝技

阅读(2)

本文主要为您介绍python黑客绝技,内容包括黑客们会用到哪些Python技术,我想成为一名黑客,我在学python,可是里面讲的多是游戏设计,能否,黑客们会用到哪些Python技术。学习是循序渐进的过程最常见的有两本python和黑客相关的书《python灰帽

资讯

python开发什么软件

阅读(2)

本文主要为您介绍python开发什么软件,内容包括python能用来开发什么软件,开发python用什么软件,Python可以开发哪些程序。Python开发软件可根据其用途不同分为两种,一种是Python代码编辑器,一种是Python集成开发工具,两者的配合使用可以极大的

资讯

python正则匹配url

阅读(2)

本文主要为您介绍python正则匹配url,内容包括请问如何使用python的正则表达式提取url链接,请问如何使用python的正则表达式提取url链接,怎么写url的python正则表达式。1.测试正则表达式是否匹配字符串的全部或部分regex=ur"" #正则表达式if r

资讯

pythonstrtobyte

阅读(2)

本文主要为您介绍pythonstrtobyte,内容包括python怎么将字符串转换为byte,pythonstr和byte的区别,python2.7.3中怎么将str转为bytes。public class Test { public static void main(String[] args) { //1. By

资讯

jointhreadpython

阅读(2)

本文主要为您介绍jointhreadpython,内容包括python线程join什么意思,pythonthreading一定要join吗,如何在python多线程join挂起后还能在主线程。Join的作用是众所周知的,阻塞进程直到线程执行完毕。通用的做法是我们启动一批线程,最后join这

资讯

vs2013python

阅读(2)

本文主要为您介绍vs2013python,内容包括vs2013怎么进行Python编程,vs2013怎么进行Python编程,visualstudio2013为什么支持python。方法/步骤1电脑上安装微软公司的VS2013,可以从dreamspark 上下载正版或通过其他途径获得,安装即可。2打开VS20

资讯

houdinipython

阅读(2)

本文主要为您介绍houdinipython,内容包括学习Houdini必须会python吗,学习houdini到底要不要掌握python,学习houdini到底要不要掌握python。Houdini应该不错。不过似乎某个rendering(名子不记得了),应该与python的集成更好。python是一个通用语

资讯

vimpythonide

阅读(2)

本文主要为您介绍vimpythonide,内容包括如何将vim变成一个强大的pythonide,在linux下面做python程序开发,用什么ide好,在linux下面做python程序开发,用什么ide好大家在用哪个工具。可以理解题主的需求,做机器学习的时候经常需要看具体代码,通

资讯

python大文件处理

阅读(2)

本文主要为您介绍python大文件处理,内容包括内存不足时,python如何处理大文件,python对文件进行处理,如何用python最快的获取大文件的最后几行。工作中经常会遇到处理日志文件的问题:为了得到日志的最新状态,我们需要获取日志文件的最后部分

资讯

python写出csv

阅读(1)

本文主要为您介绍python写出csv,内容包括python怎么写入csv文件,python怎么写入csv文件,如何用python读写csv。import pandas as pd#任意的多组列表a = [1,2,3]b = [4,5,6] #字典中的key值即为csv中列名d