Python解释器
发表于|更新于|python
|总字数:155|阅读时长:1分钟|浏览量:
-
CPython: 官方开发的
Python解释器, 使用C语言开发 -
IPython: 基于
CPython解释器开发的, 在交互方式上有所增强(CPython用>>>作为提示符, 而IPython用In [序号]:作为提示符) -
PyPy: 采用 JIT技术, 对
Python代码进行动态编译(不是解释), 所以可以显著提高Python代码的执行速度 -
Jython: 运行在
Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行 -
IronPython: 运行在微软
.NET平台上的Python解释器, 可以直接把Python代码编译成.NET的字节码
文章作者: Ardenet
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Ardenet'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 匹配 a 或 b (...) 对正则表达式分组并记住匹配的文本 (?imx...) 正则表达式包含三种可选标志: i, m 或 x; 只影...

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): p...

2022-04-23
高级特性
列表生成式¶ 当要生成list时, 可以用list(range(1,11)), 但如果生成[1x1, 2x2,..., 10x10], 一般用循环 12345L=[]for x in range(1, 11): L.append(x * x)print(L) # [1, 4, 9, 16,..., 100] 可以用一行语句替换循环生成上面的list [x * x for x in range(1, 11)] 同时, for循环后面还可以加上if判断 [x * x for x in range(1, 11) if x % 2 == 0] 还可以循环嵌套 for…if/if…else…for…的区别¶ 在使用列表生成式时, 如果在for...后使用if...来限定, 则不加else语句, 因为这个if是一个筛选条件 如果在列表生成式中, 先用if..., 则必须加else..., 因为这表示一个条件语句, 不论前面的表达式是否需要迭代 生成器¶ 通过列表生成式, 我们可以直接创建一个列表; 但受到内存限制, 列表容量有限, 而且我们可能只访问前面的几个元素, 那后面...
评论

