课程简介:简明易懂的 Python3 课程,不仅适用于那些有其它语言基础的同学,对没有编程经验的同学也非常友好。本课程不仅讲解了 Python3 基础知识,还介绍了 PEP8、Virtualenv、测试、项目结构以及 Flask 相关内容

本课程由FrostSigh编辑,全部章节及在线练习地址:Python3 简明教程

第一节 开始 Python 之旅

知识点

使用交互模式的 Python3 解释器

简单使用 vim 编写 Python3 脚本

执行 Python3 脚本

Python3 代码风格建议

Python3 中使用注释

认识 Python3 模块

实验步骤

1. 解释器

Python 是一个脚本语言,你可以在 Python 解释器中直接写代码或者将代码写到一个文件里,然后执行这个文件(即脚本文件)。

首先,我们从使用解释器开始,打开终端,键入Python3 并回车。这个时候解释器便工作于交互模式。

作为我们第一个 Python 代码,我们将打印经典的 "Hello World!",如下所示:

>>> print("Hello World!")

Hello World!

欣赏完自己的杰作后,按 Ctrl + D 输入一个 EOF 字符来退出解释器,你也可以键入 exit() 来退出解释器。

2. 脚本文件

作为正式的程序员,你可能想要将上述的代码写到一个源文件。那么我们来创建一个 helloworld.py 文件,用你喜欢的任何编辑器来创建这个文件,我使用 Vim ,你可以使用基于 GUI 的工具,如实验楼环境桌面上的 gedit。

我们建议使用 Vim,在这里我们简单的使用它,你可以在实验楼的课程 Vim编辑器 里深入学习。

键入 vim helloworld.py 来启动 Vim 并编辑 helloworld.py,启动后不要乱按键。

然后按 i 键进入插入模式,此时你可以看到左下角有 “插入” 两个字,现在你可以键入下面的代码了。

#!/usr/bin/env python3

print("Hello World!")

其中第一行的前两个字符 #! 称为 Shebang ,目的是告诉 shell 使用 Python 解释器执行其下面的代码。

然后按 Esc 键退出插入模式,再键入 :wq 回车,Vim 就会保存文件并退出。

要运行脚本文件 helloworld.py,还要为文件添加可执行权限:

$ chmod +x helloworld.py

然后执行脚本文件:

$ ./helloworld.py

3. 代码风格建议

在 Python 中,空格很重要,我们使用空格将标识符区分开,行开始处的空格我们称之为缩进,如果你的缩进是错误的,Python 解释器会抛出错误。例如下面情形:

>>> a = 12

>>> a = 12

File "", line 1

a = 12

^

IndentationError: unexpected indent

这是因为第二行开始处出现了多余的空格,所以需要经常检查代码的缩进。

如果你在代码中混用制表符和空格,这种缩进错误会很常见。

所以如果是用空格,就一直用空格缩进,不要使用制表符。

建议遵守以下约定:

使用 4 个空格来缩进

永远不要混用空格和制表符

在函数之间空一行

在类之间空两行

字典,列表,元组以及参数列表中,在 , 后添加一个空格。对于字典,: 后面也添加一个空格

在赋值运算符和比较运算符周围要有空格(参数列表中除外),但是括号里侧不加空格:a = f(1, 2) + g(3, 4)

3. 注释

注释是一些文本用来解释此处代码是做什么的,写注释是为了使他人更容易理解代码。

Python 的注释以 # 字符开始的,在 # 字符到行尾之间的所有东西都被程序忽略为注释,也就说对程序没有任何影响。

>>> # 这是一个注释

>>> # 下面这一行是求两数之和

>>> a = 12 + 34

>>> print(a) # 这里也是注释 :)

注释主要面向的人群是开发人员和维护代码库的人员,所以如果你写了一些复杂代码,你应该写足够的注释在里面,以便让其他任何人能够通过你的注释都懂代码。你应该总是在 # 后跟一个空格,然后再写注释。你也可以做一些标准的注释,像下面这样。

# FIXME -- fix these code later

# TODO -- in future you have to do this

4. 模块

模块是包含了我们能复用的代码的文件,包含了不同的函数定义,变量。模块文件通常以 .py 为扩展名。

Python 本身在默认安装时就带有大量的模块。我们之后将会用到其中的一部分。在使用模块前先导入它。

>>> import math

>>> print(math.e)

2.71828182846

我们会在模块这个实验里学习更多有关模块的知识。

总结

完成本实验后,应当明白如何使用交互模式的 Python3 解释器,如何简单使用 vim 编写脚本文件并执行这个脚本文件,要特别注意的是,Python 使用缩进来定义语句块,缩进是 Python 语法的一部分,这与其它大多数语言不同。代码风格在本课程的第14个实验 PEP8 代码风格指南 有更为详细的讲述。注释的话,能使用英文建议使用英文。模块同样会在之后的实验里深入学习。

课程全部章节可在实验楼查看:Python3 简明教程

实验楼为本课程提供了完整的在线练习环境

后续章节

第2节 变量和数据类型

第3节 运算符和表达式

第4节 控制流 If-else

第5节 循环

第6节 数据结构

第7节 字符串

第8节 函数

第9节 文件处理

第10节 异常

第11节 类

第12节 模块

第13节 Collections 模块

第14节 PEP8 代码风格指南

第15节 迭代器、生成器、装饰器

第16节 Virtualenv

第17节 测试

第18节 项目结构

第19节 Flask 介绍

课程来源

本课程基于 Python for you and me 教程翻译制作,其中参考了 Python tutorial 和 The Python Standard Library,并对原教程的内容进行了改进与补充。

相关链接地址如下:

Python tutorial:http://www.pythondoc.com/pythontutorial3/index.html

Python for you and me:http://pymbook.readthedocs.io/en/latest/

The Python Standard Library:https://docs.python.org/3/library/index.html

python3简明教程第二版答案_Python3 简明教程相关推荐

  1. python基础教程第二版答案-Python基础教程(第2版)

    Python是一种解释型.面向对象.动态数据类型的高级程序设计语言,是*受欢迎的程序设计语言之一.Python语言简洁,语法简单,很适合作为学习编程的入门语言. 本书包括基础篇和高级篇,全面介绍Pyt ...

  2. java程序设计教程第二版答案_java程序设计教程微课版答案

    [问答题,简答题] 何谓I.Ⅱ.Ⅲ型强心苷?写出其基本结构做成. [名词解释] 枣核艼 [单选] 科植物营养体最主要的特征(). [多选] 地球固体的表层是由岩石组成的硬壳--地壳,组成地壳的岩石按成 ...

  3. python3简明教程第二版答案_python入门简明教程?求最新的python简明教程,最好是python3的...

    本人对于计算机没有任何基础,只是简单的操作.过两天要学习python语言的基础课,需要如何准备.跪谢! 先看python的简明教程,然后可以再看<dive into python>中文版( ...

  4. python基础教程第二版答案-《Python基础教程》(第2版修订版)中要注意的地方...

    想必现在大家学习Python都会用3.0及以上的版本了,虽然2.X的版本依然很多,但是这两年随着部分开源项目不再支持2.X版本,3.X已经成为趋势. 正是在这样的大背景下,我最近用这本<Pyth ...

  5. python核心教程第二版答案_python核心编程第二版第4章习题答案.docx

    python核心编程第二版第4章习题答案.docx 4-1.Python 对象.与所有 Python 对象有关的三个属性是什么?请简单的描述一下. 答案: 所有的 Python 对象都拥有三个特性:身 ...

  6. 大学计算机基础简明教程第二版答案,操作系统基础 大学计算机基础简明教程.ppt...

    操作系统基础大学计算机基础简明教程ppt课件 第四章 操作系统 操作系统在计算机软件系统中的地位 操作系统分类 常用操作系统 常用操作系统 常用操作系统 4.2 Windows基础 4.2.1 Win ...

  7. python爬虫简明教程第二版答案_高校邦《网络数据采集与Python爬虫》答案教程

    不用于治疗风湿性关节炎的药物是: Basic Energy is needed to ( ). 1.查询学生的选课课号(去掉重复的行cno)Select()cnofromcourse 合金的形状记忆效 ...

  8. python核心教程第二版答案_《python核心教程》课后题答案注解

    生成一个有N个元素的由随机数n组成的列表,其中N和n的取值范围分别为:(1 # -*- coding: utf-8 -*- def randomlist(): import random #导入随机模 ...

  9. python基础教程第二版下载-Python基础教程(第2版)

    本书包括Python程序设计的方方面面,首先从 Python的安装开始,随后介绍了Python的基础知识和基本概念,包括列表.元组.字符串.字典以及各种语句.然后循序渐进地介绍了一些相对高级的主题,包 ...

最新文章

  1. Review: Maximum Energy Efficiency Tracking for Wireless Power Transfer Systems
  2. windows环境下的zookeeper安装
  3. php bigpipe实现,如何通过php 实现BigPipe分块输出
  4. Android解决ScrollView中的滑动效果导致GestureDetector中的OnFling不能正常工作问题
  5. Dev C++ 实现Hello World
  6. java的URLConnection
  7. poj_3628 动态规划
  8. mysql导入1366_mysql source导入报错ERROR 1366的解决方法
  9. Debian中proftpd+mysql+虚拟用户+匿名用户+磁盘限额的配置
  10. 前端性能优化的常用手段
  11. 百度同步盘无法登陆,报错155010,对策
  12. redis 编译/调试
  13. 读养生四要有感《慎动篇》
  14. python中idle_python中的idle是什么意思
  15. 【安全牛学习笔记】DNS区域传输、DNS字典爆破、DNS注册信息
  16. mysql写系统_一个用PHP和MYSQL写的定饭系统_PHP
  17. 小米平板刷机shell怎么退_小米平板2win10版刷miui出现shell怎么办
  18. 批处理学习整理--批处理清理垃圾与控制开机自启软件实现
  19. cache tier 分级缓存
  20. 大小不一样的图片随着盒子大小自适应

热门文章

  1. UVA1103 古代象形符号 Ancient Messages
  2. 销售经理如何建立有效的客户档案?
  3. ddd 访问权限_Lind.DDD.Authorization用户授权介绍
  4. 软件缺陷智能分析技术(1) - 技术地图
  5. 是川银藏--------令巴菲特推崇的人物
  6. 解决XORM的时区问解决XORM的时区问题题vvvv
  7. html制作满天星,HTML5练习(1)制作满天星
  8. Goat Rodeo:面向Web应用的统一数据模型
  9. Chrome教程(一)NetWork面板分析网络请求
  10. 【纸牌屋】第一季第一集经典台词