Python解释器
发表于|更新于|python
|总字数:159|阅读时长:1分钟|浏览量:
Python解释器¶
-
CPython: 官方开发的
Python
解释器, 使用C语言
开发 -
IPython: 基于
CPython
解释器开发的, 在交互方式上有所增强(CPython用>>>
作为提示符, 而IPython用In [序号]:
作为提示符) -
PyPy: 采用 JIT技术, 对
Python
代码进行动态编译
(不是解释), 所以可以显著提高Python代码的执行速度 -
Jython: 运行在
Java
平台上的Python解释器,可以直接把Python
代码编译成Java
字节码执行 -
IronPython: 运行在微软
.NET
平台上的Python解释器, 可以直接把Python
代码编译成.NET
的字节码
文章作者: aveandar
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Float's Blog!
相关推荐
2022-04-23
基本语法
基础语法¶ 编码¶ 默认情况都采用UTF-8编码, 当然也可以为源码文件制定不同的编码 1# -*- coding: cp-1252 -*- 输入/输出¶ print() 函数可接受多个字符串, 用“,”隔开, 或用“+”连接字符串; 同时它也可以打印整数或计算结果, 同时它可以接受参数 end来指定以什么字符结尾 , 隔开: 会在输出中原本“,”的地方补一个空格 + 连接: 不会在“+”的地方补空格 input() 函数可以让用户输入字符串, 并存放在一个变量里, 同时它可以接受一个参数用于提示用户输入, 例: 12neme = input('Please enter your name:')print('hello,', name) 注释与缩进¶ 单行注释: 以 # 开头的语句是注释 多行注释: 用 '''或 """括住的部分属于多行注释, 一般位于文件, 类, 函数开头的多行注释会被解释为 DocString 缩进: PEP8 规定的缩进为4个空格 注: 当然可以使用任意个数...
2022-04-23
正则表达式
正则表达式¶ 概念¶ 正则表达式是一种用来匹配字符串的强有力的武器。它的设计思想是用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符串,我们就认为它“匹配”了,否则,该字符串就是不合法的 模式¶ 模式 描述 ^ 匹配字符串的开头 $ 匹配字符串的末尾 . 匹配任意字符 \ 是之后的表示式失效, 仅匹配其字面字符 [...] 用来表示一组字符, 单独列出[amk] 匹配 ‘a’, ‘m’ 或 ‘k’ [^...] 匹配不在[]中的字符 [...-...] 匹配一个范围(如果想匹配一个-, 则可以将其放在括号开头或结尾) * 匹配 0 个或多个表达式 + 匹配 1 个或多个表达式 ? 匹配 0 个或 1 个表达式, 非贪婪方式 {n} 精确匹配 n 个表达式 {n, m} 匹配 n 到 m 次表达式, 贪婪方式( 若无 m, 如{n,}, 则匹配 n 到无穷多个表达式) `a b` (...) 对正则表达式分组并记住匹配的文本 (?imx...)...
2022-04-23
Scrapy爬虫框架
Scrapy 架构图¶ Scrapy Engine(引擎): 负责Spider、ItemPipeline、Downloader、Scheduler中间的通讯,信号、数据传递等。 Scheduler(调度器): 它负责接受引擎发送过来的Request请求,并按照一定的方式进行整理排列,入队,当引擎需要时,交还给引擎。 Downloader(下载器):负责下载Scrapy Engine(引擎)发送的所有Requests请求,并将其获取到的Responses交还给Scrapy Engine(引擎),由引擎交给Spider来处理, Spider(爬虫):它负责处理所有Responses,从中分析提取数据,获取Item字段需要的数据,并将需要跟进的URL提交给引擎,再次进入Scheduler(调度器). Item Pipeline(管道):它负责处理Spider中获取到的Item,并进行进行后期处理(详细分析、过滤、存储等)的地方。 Downloader Middlewares(下载中间件):你可以当作是一个可以自定义扩展下载功能的组件。 Spider Middlewares(Spid...
2022-04-23
基本数据结构
标准数据类型¶ 数字 字符串 列表 元组 集合 字典 不可变数据(3个): 数字, 字符串, 元组 可变数据(3个): 列表, 字典, 集合 数字¶ 数字类型转换 int(x) 将x转换为一个整数 float(x) 将x转换为一个浮点数 complex(x) 将x转换为一个复数, 实数部分为 x, 虚数部分为 0 complex(x, y) 将x和y转换为一个复数 数字运算 + - * / 这是普通的除法, 返回的是一个浮点数 // 这是整除(向下取整) 数学函数 abs(x) 返回数字的绝对值, 如abs(-10) 返回10 ceil(x) 返回数字的上入整数, 如math.ceil(4.1) 返回5 exp(x) 返回exe^xex fabs(x) 返回数字的绝对值的浮点数形式 floor(x) 返回数字的下舍整数, 如floor(4.9) 返回 4 log(x, y) 返回logyxlog_y xlogyx log10(x) 返回log10xlog_10 xlog10x max(x1, x2,…) 返回给定参数的最大值, 参数可为序列 min() 与...
2022-04-23
函数详解
定义¶ 以def关键词开头, 后街函数标识符名称和圆括号() 任何传入参数和自变量必须放在圆括号中间 函数的第一行语句可以选择性的使用文档字符串—用于存放函数说明 函数内容以冒号起始并且缩进 return [表达式]结束函数, 选择性的返回一个只给调用方; 不带表达式的return相当于返回None 参数传递¶ 在Python中, 类型属于对象, 变量是没有类型的, 如a = [1, 2, 3]以上代码中, [1, 2, 3]是list类型, 而a是没有类型的,他仅仅是一个对象的引用(指针) 可更改与不可更改对象¶ 不可变类型: string, tuple和number是不可更改对象 可变类型: list, dict等是可更改对象 传递参数过程: 不可变类型: 类似值传递 可变类型: 类似引用传递 补充: 不可变对象是指对象本身不可变, 但变量的对象引用可变而可变对象是指对象内容可变, 但变量的对象引用不会改变 参数类型¶ 必备参数(位置参数) 必备参数必须以正确的顺序传入函数, 调用时的数量必须和声明时一样 12def func(param): pass ...
2022-04-23
模块详解
模块¶ 定义¶ 模块是一个包含所有你定义的函数和变量的文件, 其后缀名为.py模块可以被其他的程序引入, 以使用该模块中的函数等功能; 这也是使用Python标准库的方法 用法¶ import语句¶ 语法: import module1[, module2[,... moduleN]] 作用: 解释器会在搜索路径下寻找导入的模块, 找到则导入, 找不到则报错(一个模块只会被导入一次, 不论使用了几次import) 搜索路径: 在Python编译或安装时确定的, 被保存在sys模块中的path变量中; sys.path输出的是一个列表, 其中第一项是空字符串, 代表当前目录(运行脚本时, 脚本所在目录) from...import语句¶ 语法: from modname import name1[, name2[,... nameN]] 作用: 从模块中导入一个指定的部分到当前命名空间中 from...import *语句¶ 语法: from modname import * 作用: 把一个模块的所有内容全部导入到当前的命名空间中(PEP8不推荐这种方式) 深入模块¶ ...
评论