Python学习手册

Python学习手册

1.编译器

CPython

当我们从Python官方网站下载并安装好Python 3.x后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。

CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行。

IPython

IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。

CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。

PyPy

PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。

绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点

Jython

Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。

IronPython

IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

小结

Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。

本教程的所有代码只确保在CPython 3.x版本下运行。请务必在本地安装CPython(也就是从Python官方网站下载的安装程序)。

版本区别

2.x与3.x对于初学者最大区别是print。

2.x 打印后面不需要跟上圆括号,而3.x必须跟上圆括号。

2.Python命令行交互模式

  1. 直接输入python默认启动的是python2 的交互模式,然后在shell窗口中可以看到>>>箭头待输入。
  2. 输入python3时,那么交互模式就是3.x版本的python。
  3. 退出交互模式有2种方式,优雅退出是exit(),强制退出是ctrl+d
  4. 交互模式退出,在当前linux路径下不会保留任何文件信息!

3.Python编码规范(语法)

3.1编码集规则

  • 如无特殊情况, 文件一律使用 UTF-8 编码

  • 如无特殊情况, 文件头部必须加入#-*-coding:utf-8-*-标识

    # -*- coding: UTF-8 -*-
    # coding=utf-8(等号两边不能有空格)
                                                    
    

3.2标识符

  • 第一个字符必须是字母表中的字母或下划线
  • 标识符中的其他部分由字母、数字和下划线组成
  • 标识符对大小写敏感
  • python3中,非ASCII标识符 (如中文字符) 也是允许的

3.3注释

  • 单行注释:井号 #
  • ​ 多行注释:三个单引号’’’,或者三个双引号**"""**

3.4关键字和保留字

在交互命令行里敲如下命令

import keyword #导入keyword
print(len(keyword.kwlist))  #打印集合长度 35
print(keyword.kwlist)      #打印关键字 

打印的关键字如下!

[‘False’, ‘None’, ‘True’, ‘and’, ‘as’, ‘assert’, ‘async’, ‘await’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’, ‘elif’, ‘else’, ‘except’, ‘finally’, ‘for’, ‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘nonlocal’, ‘not’, ‘or’, ‘pass’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]

最新版本多加了2个keyword 'assert', 'async'

简介:

​ 1.and:表示逻辑‘与’

​ async/await:async(协程),await语法只能出现在通过async修饰的函数中。而且await后面的对象需要是一个Awaitable,或者实现了相关的协议。相关帖子async/await

​ 2.del:用于list列表操作,删除一个或者连续几个元素。

​ 3.from:导入相应的模块,用import或者from…import

​ 4.not:表示逻辑‘非’

​ 5.while:while循环,允许重复执行一块语句,一般无限循环的情况下用它

​ 6.as:as单独没有意思,是这样使用:with…as用来代替传统的try…finally语法的。

​ 7.elif:和if配合使用的,if语句中的一个分支用elif表示。

​ 8.global :定义全局变量

​ 例如:

​ name = 10

​ age = 20

​ def test():

​ global name

​ age = 30

​ name = ‘aa’

​ #print(name)

​ test()

​ print(name) # ‘aa’

​ print(age) # 20

​ 9.or:表示逻辑“或”

​ 10.with:和as一起用,使用的方法请看as,见with

​ 11.assert:表示断言(断言一个条件就是真的,如果断言出错则抛出异常)用于声明某个条件为真,如果该条件不是真的,则抛出异常:AssertionError

​ v1 = 10

​ v2 = 20

​ assert(v1 > v2)

​ 12.else:参考下面if的解释

​ 13.if:if语句用于选择分支,依据条件选择执行那个语句块。(if语句中最好不要嵌套if语句,建议把嵌套的if语句写在另一个函数中)

​ 14.pass:pass的意思就是什么都不做

​ 15.yield:用起来和return很像,但它返回的是一个生成器

​ 16.break:作用是终止循环,程序走到break的地方就是循环结束的时候。

​ 17.except:和try一起使用,用来捕获异常。

​ 18.import:用来导入模块,有时这样用from…import

​ 19.class:定义类

​ 20.in:查找列表中是否包含某个元素,或者字符串a是否包含字符串b。

​ 21.raise:raise可以显示地引发异常。一旦执行raise语句,后面的代码就不执行了

​ 22.continue:跳过continue后面循环块中的语句,继续进行下一轮循环。

​ 23.finally:看到finally语句,必然执行finally语句的代码块。

​ 24.is:Python中的对象包含三要素:idtypevalue,用来判断对象是否相等

​ 25.return:用于跳出函数,也可以在跳出的同时返回一个值。

​ 26.def:用于定义方法

​ 27.for:for…in 一起使用:它在一序列的对象上递归,就是遍历队列中的每个项目

​ 28.lambda:即匿名函数

​ 29.try:出现在异常处理中,使用格式为:try…except,try中放想要执行的语句,except捕获异常

​ 30.nonlocal:nonlocal关键字用来在函数或其他作用域中使用外层(非全局)变量

​ 例如:

​ def make_counter():

​ count = 0

​ def counter():

​ nonlocal count

​ count += 1

​ return count

​ return counter

​ def make_counter_test():

​ mc = make_counter()

​ print(mc())

​ print(mc())

​ print(mc())

​ make_counter_test()

3.5 行和缩进

​ 学习 Python 与其他语言最大的区别就是,Python的代码块不使用大括号{}来控制类,函数以及其他逻辑判断。python 最具特色的就是用缩进来写模块。

​ 缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。

​ 例如:

​ if True:

​ print “True”

​ else:

​ print “False”

3.6 多行语句

​ Python语句中一般以新行作为语句的结束符。但是我们可以使用斜杠( \)将一行的语句分为多行显示,如下所示:

​ total = item_one + \

​ item_two + \

​ item_three

​ print('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\

​ aaaaaaaaaaaaaaaaaaaa’)

​ 语句中包含 [], {} 或 () 括号就不需要使用多行连接符。如下实例:

​ days = [‘Monday’, ‘Tuesday’, ‘Wednesday’,

​ ‘Thursday’, ‘Friday’]

3.7 python的引号

​ Python 可以使用引号( ’ )、双引号( " )、三引号( ‘’’ 或 “”" )表示字符串,引号的开始与结束必须的相同类型的。

​ 其中三引号可以由多行组成,编写多行文本的快捷语法,常用于文档字符串,在文件的特定地点,被当做注释。

word = 'word'

sentence = "这是一个句子。"

paragraph = """这是一个段落。
包含了多个语句""" #comment

最后一个就是一个注释,一对三引号包裹注释内容。

3.8 Python空行

​ 函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。

​ 记住:空行也是程序代码的一部分

3.9 等待用户输入

​ 执行下面的程序在按回车键后就会等待用户输入:

  input("\n\n按下 enter 键后退出。")

3.10 同一行显示多条语句

​ Python可以在同一行中使用多条语句,语句之间使用分号(;)分割,以下是一个简单的实例:

x = 'runoob';print(x + '\n')

3.11 多个语句构成代码组

​ 缩进相同的一组语句构成一个代码块,我们称之代码组。像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码构成代码组

​ 我们将首行及后面的代码组称为一个子句(clause)。

​ 例如:

​ if expression :

​ suite

​ elif expression :

​ suite

​ else :

​ suite

3.12 Print 输出

​ 同类型才可以相加

​ print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=""

x="a"

y="b"

# 换行输出

print( x )

print( y )

   

print('---------')

# 不换行输出

print( x, end=
1. 开胃菜 2. 使用 Python 解释器 2.1. 调用 Python 解释器 2.1.1. 参数传递 2.1.2. 交互模式 2.2. 解释器及其环境 2.2.1. 错误处理 2.2.2. 执行 Python 脚本 2.2.3. 源程序编码 2.2.4. 交互执行文件 2.2.5. 本地化模块 3. Python 简介 3.1. 将 Python 当做计算器 3.1.1. 数字 3.1.2. 字符串 3.1.3. 关于 Unicode 3.1.4. 列表 3.2. 编程的第一步 4. 深入 Python 流程控制 4.1. if 语句 4.2. for 语句 4.3. The range() 函数 4.4. break 和 continue 语句, 以及循环中的 else 子句 4.5. pass 语句 4.6. 定义函数 4.7. 深入 Python 函数定义 4.7.1. 默认参数值 4.7.2. 关键字参数 4.7.3. 可变参数列表 4.7.4. 参数列表的分拆 4.7.5. Lambda 形式 4.7.6. 文档字符串 4.8. 插曲:编码风格 5. 数据结构 5.1. 关于列表更多的内容 5.1.1. 把链表当作堆栈使用 5.1.2. 把链表当作队列使用 5.1.3. 列表推导式 5.1.4. 嵌套的列表推导式 5.2. del 语句 5.3. 元组和序列 5.4. 集合 5.5. 字典 5.6. 循环技巧 5.7. 深入条件控制 5.8. 比较序列和其它类型 6. 模块 6.1. 深入模块 6.1.1. 作为脚本来执行模块 6.1.2. 模块的搜索路径 6.1.3. “编译的” Python 文件 6.2. 标准模块 6.3. dir() 函数 6.4. 包 6.4.1. 从 * 导入包 6.4.2. 包内引用 6.4.3. 多重目录中的包 7. 输入和输出 7.1. 格式化输出 7.1.1. 旧式的字符串格式化 7.2. 文件读写 7.2.1. 文件对象方法 7.2.2. pickle 模块 8. 错误和异常 8.1. 语法错误 8.2. 异常 8.3. 异常处理 8.4. 抛出异常 8.5. 用户自定义异常 8.6. 定义清理行为 8.7. 预定义清理行为 9. 类 9.1. 术语相关 9.2. Python 作用域和命名空间 9.2.1. 作用域和命名空间示例 9.3. 初识类 9.3.1. 类定义语法 9.3.2. 类对象 9.3.3. 实例对象 9.3.4. 方法对象 9.4. 一些说明 9.5. 继承 9.5.1. 多继承 9.6. 私有变量 9.7. 补充 9.8. 异常也是类 9.9. 迭代器 9.10. 生成器 9.11. 生成器表达式 10. Python 标准库概览 10.1. 操作系统接口 10.2. 文件通配符 10.3. 命令行参数 10.4. 错误输出重定向和程序终止 10.5. 字符串正则匹配 10.6. 数学 10.7. 互联网访问 10.8. 日期和时间 10.9. 数据压缩 10.10. 性能度量 10.11. 质量控制 10.12. “瑞士军刀” 11. 标准库浏览 – Part II 11.1. 输出格式 11.2. 模板 11.3. 使用二进制数据记录布局 11.4. 多线程 11.5. 日志 11.6. 弱引用
Python 是一种简单易学、功能强大的编程语言,以下是 Python 使用手册的一些主题和内容: 1. 安装 Python:了解如何下载和安装 Python 解释器,并配置环境变量。 2. 基本语法:学习 Python 的基本语法,包括变量、数据类型、运算符、条件语句、循环语句等。 3. 函数和模块:了解如何定义和调用函数,以及如何使用模块来组织和扩展代码。 4. 文件操作:学习如何读写文件,包括打开文件、读取内容、写入内容等操作。 5. 异常处理:了解如何使用 try-except 语句来捕获和处理异常,以提高程序的健壮性。 6. 面向对象编程:学习面向对象编程的基本概念和用法,包括类、对象、继承、多态等。 7. 标准库:掌握 Python 的标准库,其中包含了大量的模块和函数,可以用于各种常见的任务,如字符串处理、日期时间操作、网络编程等。 8. 第三方库:了解常用的第三方库,如 NumPy(数值计算)、Pandas(数据分析)、Matplotlib(数据可视化)等,以及如何安装和使用这些库。 9. Web 开发:学习使用 Python 进行 Web 开发,包括使用 Django 或 Flask 框架搭建 Web 应用、处理请求和响应、操作数据库等。 10. 数据库操作:了解如何连接和操作各种类型的数据库,如 MySQL、SQLite、MongoDB 等。 11. 调试和测试:学习如何调试 Python 程序,以及如何编写和运行测试用例。 12. 高级主题:探索一些高级主题,如并发编程、网络编程、装饰器、生成器等,以提升编程技能和效率。 以上只是 Python 使用手册的一些主题和内容,你可以根据自己的需求进行深入学习和实践。另外,Python 官方文档也是一个很好的参考资源,可以查阅详细的语法说明和示例代码。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值