1、常量与变量 常量: 一旦赋值,就不可再改变,换句话说,就是不能对它重新赋值。...变量: 是一个名字,在赋值符号的左边,这个名字可以指代赋值符号右边的内容 In [37]: i = 3 In [38]: print(i) 3 2、系统类型 Python是强类型语言--指不同类型之间不能相互计算...= 5 Out[51]: True 3/3逻辑运算符--逻辑运算符的操作数都是bool类型或者可以隐式转化成bool类型的类型, 返回值都是bool类型 In [52]: True and False...while循环 In [61]: i = 0 In [62]: while i < 5: ...: print(i) ...: i += 1 ...: ......: 0 1 2 3 4 for in 循环里永远不要修改可迭代对象 5、break 与continue break:提前终止 In [64]: for i in range(0,10):
一个对象可以使用另外一个对象的属性或者方法,就称之为继承。...具体是通过将这个对象的原型设置为另外一个对象,这样根据原型链的规则,如果查找一个对象属性且在自身不存在时,就会查找另外一个对象,相当于一个对象可以使用另外一个对象的属性和方法了。...如果new一个箭头函数的会怎么样箭头函数是ES6中的提出来的,它没有prototype,也没有自己的this指向,更不可以使用arguments参数,所以不能New一个箭头函数。...但是不能使用数组的方法 如何把类数组转化为数组?...const保证的并不是变量的值不能改动,而是变量指向的那个内存地址不能改动。
不足:有些容器是不能设置浮动,如左右切换的焦点图等。(2)将所有写在同一行。不足:代码不美观。(3)将内的字符尺寸直接设为0,即font-size:0。...需要注意的是,立即resolve()的 Promise 对象,是在本轮“事件循环”(event loop)的结束时执行,而不是在下一轮“事件循环”的开始时。...但是,不能使用 Promise 处理多次触发的事件。链式处理是 Promise 的又一优点,但是事件却不能这样链式处理。...reject(new TypeError('循环引用')) } // if x is an object or function, if (x !...(事件总线)描述:实现一个发布订阅模式,拥有 on, emit, once, off 方法class EventEmitter { constructor() { // 包含所有监听器函数的容器对象
需要注意的是,立即resolve()的 Promise 对象,是在本轮“事件循环”(event loop)的结束时执行,而不是在下一轮“事件循环”的开始时。...但是,不能使用 Promise 处理多次触发的事件。链式处理是 Promise 的又一优点,但是事件却不能这样链式处理。...reject(new TypeError('循环引用')) } // if x is an object or function, if (x !...因此最后返回的不管是不是函数,也都不能说明没有产生闭包闭包的表现形式返回一个函数在定时器、事件监听、Ajax 请求、Web Workers 或者任何异步中,只要使用了回调函数,实际上就是在使用闭包。...let不能在声明前使用,但是这并不是常说的 let 不会提升,let提升了,在第一阶段内存也已经为他开辟好了空间,但是因为这个声明的特性导致了并不能在声明前使用对 WebSocket 的理解WebSocket
指定的通道subscribe订阅消息 bool subscribe(int channel); // 向redis指定的通道unsubscribe取消订阅消息 bool unsubscribe...(int channel); // 在独立线程中接收订阅通道中的消息 void observer_channel_message(); // 初始化向业务层上报通道消息的回调对象...bool Redis::subscribe(int channel){ // SUBSCRIBE命令本身会造成线程阻塞等待通道里面发生消息,这里只做订阅通道,不接收通道消息 // 通道消息的接收专门在...= 0; while (!...= 0; while (!
就可以创建 float,不能再简单。有时候我们想保留浮点型的小数点后 n 位。可以用 decimal 包里的 Decimal 对象和 getcontext() 方法来实现。...3.2 迭代循环 对于迭代循环,Python 里面有「while 循环」和「for 循环」,没有「do-while 循环」。...while 循环 n = 5 while n > 0: print(n) n = n-1 print('I love Python') 5 4 3 2 1 I love Python While...循环非常简单,做事直到 while 后面的语句为 False。...一般来说,在 「while 循环」中,迭代的次数事先是不知道的,因为通常你不知道 while 后面的语句从 True 变成 False了。
把True变为False,把False变为True后输出: 参考答案: print not True print not False 学习引导: 数据类型-布尔 数据类型-元组 数据类型-字符串 bool...布尔类型 布尔类型取值只有两种情况,表示真假值,即 yes or no python 中布尔值使用常量True 和 False来表示;注意大小写 比较运算符 == 等返回的类型就是bool类型;...布尔类型通常在 if (判断)和 while (循环)语句中应用 下面是一个简单的案例演示 print(True==1) print(False==0) print(2>1) print(0>3) ''...使用三引号('''或""")可以指定一个多行字符串。...DataScience' print(str[1]) #打印该字符串中第一个元素 print(str[2:-1]) #打印该字符串中第三个元素到倒数第二个元素 #a #taScienc Python中的字符串不能改变
在IPython中,打印对象不必使用print命令,只需输入对象就成了。...中的标量、字符串、数据结构、函数、类、模块等都是对象,可以使用type(*)方法查看其对象信息。...要判断两个变量是否引用同一个对象,可以使用is关键字。...Out[50]: ['foo', 2, (3, 4)] 另外,例如字符串和元组,是不可变对象,即不能修改其内部数据: In [51]: a_tuple = (3, 5, (4, 5)) In [52]...循环 while循环指定了条件和代码快,当条件为False或用break退出循环,代码才会退出: x = 256 total = 0 while x > 0: if total > 500:
如果值为null或undefined,则该表达式会抛出 TypeError,因为这是两个 JavaScript 值,不能具有属性。..., >= 按字母顺序比较 L 2 str,str→bool instanceof 测试对象类 L 2 obj,func→bool in 测试属性是否存在 L 2 any,obj→bool...任何其他调用——间接调用——使用全局对象作为其变量环境,不能读取、写入或定义局部变量或函数。(直接和间接调用只能使用var定义新变量。...语法是: do *`statement`* while (*`expression`*); do/while循环比其while表亲更少使用——实际上,很少有确定要执行至少一次循环的情况。...之前,我们考虑了for循环的行为,以等效的while循环来描述。然而,由于continue语句对这两种循环的行为不同,因此仅使用while循环无法完全模拟for循环。
在 ES6 之前,是没有块级作用域的说法的: while (true) { var name = 'Leo' break } console.log(name) // Leo while 体里面定义的变量在代码块外也可以访问到...const name //Uncaught SyntaxError: Missing initializer in const declaration const 声明的对象不能修改绑定,但是允许修改值...,这也就意味着 const 声明的对象可以修改属性值。...console.log(value) // undefined if (true) { let value = '555' } 循环绑定 var 声明使得在循环中创建和使用函数总是有一些问题。...for-in 循环和 for-of 循环也是一样的。 而 const 不能用于下面的循环,由 const 声明的 i 为常量,当对齐运行 ++ 运算的时候报错。
(2 given) 如果传入的参数数量是对的,但参数类型不能被函数所接受,也会报TypeError的错误,并且给出错误信息:str是错误的参数类型: >>> abs('a') Traceback (most...(1) True >>> bool('') False 2....因此,函数内部通过条件判断和循环可以实现非常复杂的逻辑。 如果没有return语句,函数执行完毕后也会返回结果,只是结果为None。 return None可以简写为return。...所以,定义默认参数要牢记一点:默认参数必须指向不变对象! 为什么要设计str、None这样的不变对象呢?因为不变对象一旦创建,对象内部的数据就不能修改,这样就减少了由于修改数据导致的错误。...此外,由于对象不变,多任务环境下同时读取对象不需要加锁,同时读一点问题都没有。我们在编写程序时,如果可以设计一个不变对象,那就尽量设计成不变对象。
要判断两个引用是否指向同一个对象,可以使用is方法。...也可以用科学计数法表示: In [50]: fval = 7.243 In [51]: fval2 = 6.78e-5 不能得到整数的除法会得到浮点数: In [52]: 3 / 2 Out[52]...可以用count方法计算c中的新的行: In [55]: c.count('\n') Out[55]: 3 Python的字符串是不可变的,不能修改字符串: In [56]: a = 'this is...Out[93]: float In [94]: int(fval) Out[94]: 3 In [95]: bool(fval) Out[95]: True In [96]: bool(0...: for a, b, c in iterator: # do something While循环 while循环指定了条件和代码,当条件为False或用break退出循环,代码才会退出: x
对于对象参数来说,可以使用以下几个属性:capture:布尔值,和 useCapture 作用一样once:布尔值,值为 true 表示该回调只会调用一次,调用后会移除监听passive:布尔值,表示永远不会调用...,并且在此函数没有返回对象的情况下,返回这个新建的对象浏览器本地存储方式及使用场景(1)CookieCookie是最早被提出来的本地存储方式,在此之前,服务端是无法判断网络中的两个请求是否是同一用户发起的...事件总线(发布订阅模式)class EventEmitter { constructor() { this.cache = {} } on(name, fn) {...怎么加事件监听,两种onclick 和 addEventListener事件传播机制(事件流)冒泡和捕获事件循环机制 (Event Loop)事件循环机制从整体上告诉了我们 JavaScript 代码的执行顺序...Event Loop即事件循环,是指浏览器或Node的一种解决javaScript单线程运行时不会阻塞的一种机制,也就是我们经常使用异步的原理。
// 重点是then的参数两个参数是函数,而这两个函数的返回值,可能是一个Promise对象,或一个普通对象或一个有then方法的对象或者是个基础数据类型 class Promise {...用创建promise的函数里面可能有个异步函数,在异步函数中resolve的,也可能用户根本 没想resolve() // 发布订阅,将回调存好,他总会resolve...('循环引用是干啥?')...('循环引用是干啥?')...('循环引用是干啥?')
通过对象字面量定义get和set方法 有个注意的地方,get与set的函数体都不能再定义本身该属性,否则执行的时候会陷入死循环,抛出栈溢出。...使用get语法时,不能带参数;然而set必须有一个明确的参数。...在对象字面量中,同一个属性不能有两个get,也不能既有get又有属性键值(不允许使用 { get x() { }, get x() { } } 和 { x: …, get x() { } } ) 在同一个对象中...,不能为一个已有真实值的变量使用 set ,也不能为一个属性设置多个 set。...//Uncaught RangeError: Maximum call stack size exceeded 使用 Object.defineProperty 方法 与对象字面量不同,使用 Object.defineProperty
hash 使用内置函数hash对某个对象求hash值时, 会调用对象的__hash__方法,示例代码如下 In [1]: class Point: ...: def __hash__(self...__hash__ = None In [9]: set([Point(), 12]) # 不能放在集合里面,因为不能hash ------------------------------------...__len__方法时,可以使用内置方法len求对象的长度, __len__方法必须返回非负整数 lst = [1, 2, 3] len(lst) # 返回3 lst....def __bool__(self): return True bool(T()) # 返回True 当对象o没有实现__bool__方法时,如果o实现了__len__方法, bool...): return 0 bool(Q()) # 返回False 当对象o既没有实现__bool__方法,也没有实现 __len__方法的时候, bool(o)返回值为True class
bool(1) False bool("0") True bool(0) False Python中对象类型转换可参考表3-2。...循环结构 这里介绍Python中的for循环结构和while循环结构,循环语句用于遍历枚举一个可迭代对象的所有取值或其元素,每一个被遍历到的取值或元素执行指定的程序并输出。...循环 while循环一般会设定一个终止条件,条件会随着循环的运行而发生变化,当条件满足时,循环终止。...while循环可以通过条件制定循环次数,例如通过计数器来终止掉循环,如下所示,计数器count每循环一次自增1,但count为5时,while条件为假,终止循环。...print (x,count) (9.973857171889038e-05, 570) 4.3 break、continue、pass 上例中while循环代码中使用了break表示满足条件时终止循环
领取专属 10元无门槛券
手把手带您无忧上云