这里是一些小知识点的汇集,为的是以后查找的方便。

  行与缩进:

    物理行:实际看到的代码行数。

    逻辑行:在意义上的函数(即解释器执行的行数)

    如果一个物理行中包含了多个逻辑行,则每个逻辑行之间需要用分号 “;” 隔开,最后一个逻辑行可以省略分号

    一个逻辑行分为了多个物理行的话使用转义符 "\" 进行每个物理行之间的连接

    缩进:逻辑行行首的空白,一般情况下行首不留空白

      if和while语句的缩进:条件下的一个tab字符

  运算符:

    //:除法,向下取整

    %:取余

    &:二进制下的按位“与”运算

    |:按位或

    ^:按位异或(不同为1,相同为0)

    ~:按位翻转 ~x=-(x+1)

    <<:二进制左移,左移n个单位相当于乘以2^n

    >>:二进制右移,右移n个单位相当于除以2^n

    运算符优先级:

    1. 函数调用、寻址、下标
    2. 幂运算**
    3. 翻转运算
    4. 正负号
    5. *  /   %
    6. +   -
    7. <<   >>
    8. &  ^  |
    9. 比较运算符:>  < >= <=
    10. 逻辑的  not and or
    11. lambda表达式

  表达式和print执行的区别:表达式在命令行中输入单行命令,如:>>>a=“hello”    >>>a    则会有’hello‘ 而如果是print(a),则是hello,不加引号。

  map和列表解析的区别由以下代码可看出差异:

    

li =[x for x in range(1,11)] #列表解析
print(li)
def func(x):
return x+10
li2 = map(func,li) #遍历
print(list(li2))

  强调一点的是map跟li是等长的,而列表解析则可以加筛选条件使其不等长。

  

  5种 IO model

  •     blocking IO    阻塞IO
  •     nonblocking IO   非阻塞IO

  •     IO multiplexing   IO多路复用

  •     signal driven IO  信号驱动IO

  •     asynchronous IO    异步IO

  同步、异步、io多路复用的区别

  同步即一个io操作完成之后才能执行其他io操作,在等待过程中不能执行其他命令,而异步io则可以在启动io操作之后则跳到另一个线程,在该io操作发出执行完毕的操作后将再跳回执行该线程,可以节省等待的时间,但是如果io操作很简单且数量大时,同步比异步还相对省时。同步是执行中阻塞,异步非阻塞

  异步和io多路复用的区别:当当前io操作执行完毕之后,异步会将数据传到内存里,等着你去调用,整个过程没有任何的阻塞,io多路复用是依然存在内核中,还需要去调取。io多路复用依然有阻塞,只是阻塞在select或epoll中而不是在select IO中,所以io多路复用并不是异步IO。但是异步的实现过程比较复杂,所以现在最常用的还是IO多路复用

  做个不恰当的比喻来区分:

  •     阻塞IO相当于你自己寄快递,从拿快递到送快递都需要你完成
  •     非阻塞IO相当于你把快递给了快递公司,快递到了之后给你发个短信,你亲自跑去取
  •     IO多路复用则是你把快递给了很多个快递公司同时进行快递,一有快递则会通知你去取
  •     异步IO则是你雇了一个人,让他去寄快递,快递到了之后他帮你取到家门口。

  

python中的小知识点的更多相关文章

  1. Python中的小括号()、中括号[]、花括号{}区别

    Python中最常见括号的区别: 在Python语言中最常见的括号有三种,分别是:小括号().中括号[].花括号{}:其作用也不相同,分别用来代表不同的Python基本内置数据类型. Python中的 ...

  2. python中的 小数据池 is 和 ==

    1. 小数据池 一种数据缓存机制,也被称为驻留机制 小数据池针对的是:整数 , 字符 , 布尔值 .其他的数据类型不存在驻留机制 在python中对 -5 到256之间的整数会被驻留在内存中, 将一定 ...

  3. python应用中的小知识点

    1.with有什么作用 with的作用是自动管理上下文打开关闭文件的时候,可以用with,文件对象不再使用的时候,会自动给我们关闭,不需手动关闭了数据库连接的时候, 2.没有import的模块怎么快速 ...

  4. 私人定制javascript中对象小知识点(Only For Me)

    废话不多讲,先上笑话,然后再,.看懂这个的说明你的节操已经不再了. 晚饭后去理发店理发...割了吧...老板问我怎么剪,我悠悠的来一句往帅了剪...高潮往往令人想不到....旁边一在焗油烫头发的大妈说 ...

  5. 年度巨献-WPF项目开发过程中WPF小知识点汇总(原创+摘抄)

    WPF中Style的使用 Styel在英文中解释为”样式“,在Web开发中,css为层叠样式表,自从.net3.0推出WPF以来,WPF也有样式一说,通过设置样式,使其WPF控件外观更加美化同时减少了 ...

  6. python中线程的知识点

    什么是线程? 程序的执行线路.每个进程默认有一条线程.线程包含了程序的具体步骤. 多线程就是一个进程中有除主线程(默认线程)外还有多个线程. 线程与进程的关系(进程包含线程,而线程依赖进程存在) 1. ...

  7. js中一些小知识点总结--持续更新

    以下知识点来自于编写高质量代码-改善JavaScript程序的188个建议,只用于自我知识的补充. 一.NaN 1.NaN是一个特殊的数量值,不表示一个数字,尽管下面的代码仍然是返回类型为number ...

  8. Python中函数的知识点

    1.函数的定义与调用 2.函数的参数 3.函数的返回值   1. 1.1.函数的定义: 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 1.2.定义一个函数: 规则: 函数代码块以 ...

  9. java中的小知识点

    1.数据类型的相关知识点 1.1.java内置封装类的转换 java中内置的封装类Byte.Integer.Float.Double和Long都可以转换成double类型的数值:因为这些封装好的类中都 ...

随机推荐

  1. php获取今日开始时间戳和结束时间戳

    1.php获取今日开始时间戳和结束时间戳  $beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));$endToday=mktime(0,0,0 ...

  2. 使用单元素的枚举类型实现Singleton

    从java1.5版本开始,实现singleton出现了第三种方式: public enum SingleTon { INSTANCE; public void speak() { System.out ...

  3. GNU autotools自动生成Makefile 介绍

    一.目的 使用autotools工具来帮助我们自动地生成符合自由软件惯例的makefile(这样就可以像常见的GNU程序一样,只要使用"./configure", "ma ...

  4. [翻译]编写高性能 .NET 代码 第二章:垃圾回收 基本操作

    返回目录 基本操作 垃圾回收的算法细节还在不断完善中,性能还会有进一步的提升.下文介绍的内容在不同的.NET版本里会略有不同,但大方向是不会有变动的. 在.net进程里会管理2个类型的内存堆:托管和非 ...

  5. python使用

    1. ipython 打印所有的输出变量 from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast ...

  6. iOS开发引入第三方类库的问题

    在开发iOS程序的过程中,通常在导入第三方的类库(.a/.o)文件会报出一系列的错误: Undefined symbols for architecture i386: "std::stri ...

  7. Ubuntu17.10下启动Rancher

    1.安装Docker: 获取最新的docker安装包 wget -qO- https://get.docker.com/ | sh 2.启动docker后台服务: service docker sta ...

  8. Hadoop序列化与Java序列化

    序列化就是把内存中的对象的状态信息转换成字节序列,以便于存储(持久化)和网络传输 反序列化就是就将收到的字节序列或者是硬盘的持久化数据,转换成内存中的对象. 1.JDK的序列化 只要实现了serial ...

  9. jQuery手机发送验证码倒计时代码

    <!DOCTYPE> <html> <head> <meta charset="UTF-8"> <script type=&q ...

  10. SQL Server查询中对于单列数据','分割的数据进行的拆分操作,集合的每一个行变多行

    1.cross apply cross apply 我们可以把它看作成是inner join 来使用 2.outer apply outer apply我们可以把它看做是left join 来使用 注 ...