1.python解释器的种类及特点

  • CPython,由C语言开发的,使用最广的解释器(最具广泛兼容性方案)

  • IPython,基于cpython之上的一个交互式计时器,交互方式增强,功能和CPython一样

  • pypy,目标是执行效率,对python代码进行动态编译,提高执行效率

  • JPython,运行在java上的解释器,直接把python代码编译成java字节码执行

  • IronPython,运行在微软.NET平台上的解释器,把python编译成.NET的字节码

2.PEP8规范

缩进

  • 缩进,4个空格缩进
  • 每行最大长度79,换行可以使用反斜杠\

引号

  • 自然语言(和人类交流的语言)使用双引号

  • 机器标识(和机器交流的语言)使用单引号

  • 正则表达式使用双引号

  • 文档字符串 (docstring) 使用三个双引号

注释

#号后空一格,段落件用空行分开(同样需要#号)

# 块注释
# 块注释
#
# 块注释
# 块注释

行内注释,至少要使用两个空格分开:

name = 'letin'  #我的名字
  • 错误的注释不如没有注释。所以当一段代码发生变化时,第一件事就是要修改注释!

空格

  • 操作符左右各加一个空格 ,在函数的参数中不要加
  • 不要在逗号、分号、冒号前面加空格,应该在它们后面加(除非在行尾)
  • 函数的参数列表中,逗号之后要有空格
  • 左括号之后,右括号之前不要加添加空格

模块导入

  • 不要在一句import中多个库,比如import os, sys不推荐。

1、标准库导入

2、第三放库导入

3、自定义库导入

  • 不要使用以下导入方法
from bs4 import *

命名规范

  • 模块命名尽量短小,首字母保持小写,可以使用下划线 (尽量不要用下划线)

  • 类名使用驼峰(CamelCase)命名风格,首字母大写,私有类可用一个下划线开头,私有函数可用一个下划线开头

  • 函数名一律小写,如有多个单词,用下划线隔开

  • 变量名尽量小写, 如有多个单词,可用下划线隔开

  • 常量名全大写,如有多个单词,可用下划线隔开

3.解释型语言和编译型语言

编译型语言, (先编译打包,后执行)

使用专门的编译器,针对特定的平台,将高级语言源代码一次性的编译成可被该平台硬件执行的机器码,并包装成该平台所能识别的可执行性程序的格式

一次性的编译成平台相关的机器语言文件,运行时脱离开发环境,运行效率高

解释型语言,(依赖解释器, 提供相应的解释器,就可以运行源代码 )

解释型语言不需要事先编译,其直接将源代码解释成机器码并立即执行,所以只要某一平台提供了相应的解释器即可运行该程序 。

解释型语言每次运行都需要将源代码解释称机器码并执行,效率较低

4、bit、B、KB、MB、GB的关系

1TB=1024GB
1GB=1024MB;
1MB=1024KB;
1KB=1024B;
1B=8bit

unicode一个字符是2个字节

utf-8一个字符是3个字节

GBK英文1个字节,中文2个字节

5、列举你所了解到python2和python3的区别

python2有int和long int类型,python3只有int类型

python2的str就是python3的Unicode

python2的bytes就是python3的str

6、is和==的区别

== 是比较值是否相同

is 是比较id是否相同

7、一行代码实现数值交换

a,b = b,a

8、列举常用的字符串格式化的方式

  • %S
  • format
  • f-string

9、python垃圾回收机制

  • 引用计数,当指向该对象内存的引用数为0时回收

  • 标记清除,第一阶段标记,第二阶段清除

    第一轮:标记所有“活动对象”与“非活动对象”

    第二轮:清除“非活动多选”

  • 分代清除, 为了更合理的进行【标记-删除】 ,代数越高的对象(存活越持久的对象),幼年,中年,老年

10:求结果(自己先想,想完在执行):

v1 = 1 or 3	1
v2 = 1 and 3	3
v3 = 0 and 2 and 1	0
v4 = 0 and 2 or 1	1
v5 = 0 and 2 or 1 or 4	1
v6 = 0 or Flase and 1	

对python而言

其一, 在不加括号时候, and优先级大于or
其二, x or y 的值只可能是x或y. x为真就是x, x为假就是y
第三, x and y 的值只可能是x或y. x为真就是y, x为假就是x

例一:
对于, 1 or 5 and 4: 先算5 and 4, 5为真, 值为4. 再算1 or 4, 1 为真,值为1
对于, (1 or 5) and 4: 先算1 or 5, 1为真, 值为1. 再算1 and 4, 1为真,值为4

 posted on 2019-11-02 20:29  Rannie`  阅读(232)  评论(0编辑  收藏  举报
去除动画
找回动画