Python学习手册

Python学习手册Python 学习手册 1 编译器 CPython 当我们从 Python 官方网站下载并安装好 Python3 x 后 我们就直接获得了一个官方版本的解释器 CPython

大家好,欢迎来到IT知识分享网。

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=

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/111355.html

(0)
上一篇 2026-01-25 13:15
下一篇 2026-01-25 13:27

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信