and_or问题
1.列举你所知道的PEP8 Python编码规范
1 缩进: 每个缩进级别使用4个空格,推荐使用空格
2 每行代码的最大长度:将所有行限制为最多79个字符。
Python标准库是保守的,需要将行限制为79个字符
3 用两个空白行分隔顶层函数和类定义;类中的方法定义用一个空行分隔
4 导入库函数:若是导入多个库函数,应该分开依次导入
导入应按以下顺序进行:
① 标准库导入
② 有关的第三方库进口
③ 本地应用程序/库特定的导入
应避免通配符导入(import *)
5 总是围绕这些二元运算符在两侧使用一个空格;用于指示关键字参数或默认参数值时,不要在=符号周围使用空格
五:命名约定
1 采用描述性的命名规则,例如一个实现某种功能的类或函数,那这个类或
函数的名字就以相应的功能实现作为命名,简单易懂
2 类的命名采用驼峰命名法,即每个单词的首字母大写
3 函数名称应该是小写的,为了提高可读性,必须使用由下划线分隔的单词
4 类的方法第一个参数必须是self,而静态方法第一个参数必须是cls
5 判断序列空与不空,if not 条件,优于if 条件
1 求结果(易错题)
v1 = 1 or 3
v2 = 1 and 3
v3 = 0 and 2 and 1 v4 = 0 and 2 or 1 v5 = 0 and 2 or 1 or 4 v6 = 0 or Flase and 1
在Python中,None、任何数值类型中的0、空字符串“”、空元组()、空列表[]、空字典{}都被当作False,还有自定义类型,如果实现了 __ nonzero __ () 或 __ len __ () 方法且方法返回 0 或False,则其实例也被当作False,其他对象均为True。
总结: 前提一个运算符的情况
- or 从左到右,返回第一个为真的值,都为假返回后一个值
- and 从左到右,若所有值均为真,则返回后一个值,
- and 从左到右 有一个假的值,则返回第一个假的值
包含两个及以上的逻辑运算符
逻辑运算符 and / or 一旦不止一个,其运算规则的核心思想就是短路逻辑
逻辑运算符 and / or 一旦不止一个,其运算规则的核心思想就是短路逻辑。好的,那我们就来了解一下短路思想:
1 表达式从左至右运算,若 or 的左侧逻辑值为 True ,则短路 or 后所有的表达式(不管是 and 还是 or),直接输出 or 左侧表达式 ;若左侧为False(即为假)则右侧的值后后面继续对比
表达式从左至右运算,若 and 的左侧逻辑值为 False ,则短路其后所有 and 表达式(若是后面没有or,直接返回and左侧的值),直到有 or 出现,输出 and 左侧表达式到 or 的左侧,参与接下来的逻辑运算。
若 or 的左侧为 False ,或者 and 的左侧为 True 则不能使用短路逻辑
5、字符编码发展史及ascii、unicode、utf-8、gbk 区别?
ascii : 8bit=1bytes,一个英文字符占用1个字节 范围基本只有英文字母、数字和一些特殊字符,只有256个字符 一个字节 是 1个 bytes
gbk 编码汉字的: 16bit=2bytes 2个字节表示一个中文字节,1个字节表示英文字节
unicode全世界的所有字节(内存中固定的编码):16bit=2bytes,2个字节表示一个字符,中文也是2个字节
utf-8万国码:1字节表示一个英文字符,3bytes表示一个中文字符
4.js代码书写位置有几种,什么是事件,js如何绑定事件