课程设置与概述

欢迎访问本课程(Practical Python Programming)。这个页面包含一些关于课程设置的重要信息。

课程周期和时间要求

该课程最初是作为一个由讲师主导的,持续 3 -4 天的现场培训。要全部完成本课程,您应该最少计划用25-35小时进行学习。大部分的参与者发现,在不浏览题解代码的情况下,学习材料是相当具有挑战性的(见下文)

设置和 Python 安装

您只需要安装 3.6 或者更新版本的 Python 即可。不依赖于任何特定的操作系统,编辑器,IDE,或者其它与 Python 相关的工具。没有第三方依赖。

也就是说,本课程大部分内容涉及学习如何编写脚本与小型程序,这些脚本与小型程序涉及从文件中读取数据。因此,您需要确保您处在一个可以轻松处理文件的环境中。这包括使用编辑器创建 Python 程序,并能够从 shell 或终端运行这些程序。

您可能倾向于使用更具交互性的环境来学习本课程,例如 Jupyter Notebooks。我建议不要这样做。尽管 Jupyter Notebooks 非常棒,但本课程中的许多练习教授与程序组织的相关的观念,包括使用函数,模块,导入语句以及重构源代码跨越多个文件的程序。以我的经验,很难在 Jupyter Notebooks 环境中重复这样的环境。

派生(Forking)/克隆(Cloning) 课程仓库

为了准备本课程的环境,我推荐您从本课程的仓库 https://github.com/dabeaz-course/practical-python 派生您自己的 GitHub 仓库。完成后,您可以将其克隆到本地计算机上:

bash % git clone https://github.com/yourname/practical-python
bash % cd practical-python
bash %

请在 practical-python/ 目录下完成所有的练习。如果将解题代码提交回派生的仓库,那么您的所有代码会保存到一个地方。完成后,您将拥有良好的学习记录。

如果您不想派生一个自己的 GitHub 仓库或者您没有 GitHub 账号,您仍然可以将本课程的仓库克隆到您自己的计算机上:

bash % git clone https://github.com/dabeaz-course/practical-python
bash % cd practical-python
bash %

如果这样做,除了对计算机的本地副本进行更改外,您将无法提交代码更改到 GitHub 上。

课程排版

在 Work/ 目录下完成所有的编程工作。在Work/ 目录里面,有一个 Data/目录。 Data/ 目录包含各类在课程中使用的数据文件及其它脚本。您将会经常访问位于 Data/目录下的文件。课程练习假定您在 Work/ 目录下创建程序。

课程顺序

课程材料应该从第 1 节开始,按章节顺序完成。后面章节中的课程练习以前面章节中编写的代码为基础。后面的许多练习涉及对现有代码的微小重构。

题解代码

Solutions/ 目录包含选定练习的题解代码。如果您需要一些提示,请随时查看。为了最大限度地利用课程,您应该首先尝试创建自己的题解。

目录 | 下一节 (1 Python 简介)

翻译:《实用的Python编程》00_Setup的更多相关文章

  1. 翻译:《实用的Python编程》InstructorNotes

    实用的 Python 编程--讲师说明 作者:戴维·比兹利(David Beazley) 概述 对于如何使用我的课程"实用的 Python 编程"进行教学的问题,本文档提供一些通用 ...

  2. 翻译:《实用的Python编程》README

    欢迎光临 大约 25 年前,当我第一次学习 Python 时,发现 Python 竟然可以被高效地应用到各种混乱的工作项目上,我立即被震惊了.15 年前,我自己也将这种乐趣教授给别人.教学的结果就是本 ...

  3. 翻译:《实用的Python编程》05_02_Classes_encapsulation

    目录 | 上一节 (5.1 再谈字典) | 下一节 (6 生成器) 5.2 类和封装 创建类时,通常会尝试将类的内部细节进行封装.本节介绍 Python 编程中有关封装的习惯用法(包括私有变量和私有属 ...

  4. 翻译:《实用的Python编程》04_02_Inheritance

    目录 | 上一节 (4.1 类) | 下一节 (4.3 特殊方法) 4.2 继承 继承(inheritance)是编写可扩展程序程序的常用手段.本节对继承的思想(idea)进行探讨. 简介 继承用于特 ...

  5. 翻译:《实用的Python编程》01_02_Hello_world

    目录 | 上一节 (1.1 Python) | 下一节 (1.3 数字) 1.2 第一个程序 本节讨论有关如何创建一个程序.运行解释器和调试的基础知识. 运行 Python Python 程序始终在解 ...

  6. 翻译:《实用的Python编程》03_03_Error_checking

    目录 | 上一节 (3.2 深入函数) | 下一节 (3.4 模块) 3.3 错误检查 虽然前面已经介绍了异常,但本节补充一些有关错误检查和异常处理的其它细节. 程序是如何运行失败的 Python 不 ...

  7. 翻译:《实用的Python编程》03_04_Modules

    目录 | 上一节 (3.3 错误检查) | 下一节 (3.5 主模块) 3.4 模块 本节介绍模块的概念以及如何使用跨多个文件的函数. 模块和导入 任何一个 Python 源文件都是一个模块. # f ...

  8. 翻译:《实用的Python编程》03_05_Main_module

    目录 | 上一节 (3.4 模块) | 下一节 (3.6 设计讨论) 3.5 主模块 本节介绍主程序(主模块)的概念 主函数 在许多编程语言中,存在一个主函数或者主方法的概念. // c / c++ ...

  9. 翻译:《实用的Python编程》04_01_Class

    目录 | 上一节 (3.6 设计讨论) | 下一节 (4.2 继承) 4.1 类 本节介绍 class 语句以及创建新对象的方式. 面向对象编程(OOP) 面向对象编程是一种将代码组织成对象集合的编程 ...

随机推荐

  1. 【MySQL 基础】MySQ LeetCode

    MySQL LeetCode 175. 组合两个表 题目描述 表1: Person +-------------+---------+ | 列名 | 类型 | +-------------+----- ...

  2. 【剑指 Offer】06.从尾到头打印链表

    题目描述 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回). 示例 1: 输入:head = [1,3,2] 输出:[2,3,1] 限制: 0 <= 链表长度 <= 10 ...

  3. Spring Cloud微服务Sentinel+Apollo限流、熔断实战总结

    在Spring Cloud微服务体系中,由于限流熔断组件Hystrix开源版本不在维护,因此国内不少有类似需求的公司已经将眼光转向阿里开源的Sentinel框架.而以下要介绍的正是作者最近两个月的真实 ...

  4. apiAutoTest: 接口自动化测试的数据清洗(备份/恢复)处理方案

    接口自动化测试之数据清洗/隔离/备份/恢复 在得到QQ:1301559180 得代码贡献之后,想到了通过ssh连接上服务器,然后进行数据库备份,数据库恢复, 主要使用了 paramiko库 最终效果 ...

  5. 使用modify修改内表

    modify修改内表,有这样一种方式,MODIFY TABLE itab FROM wa [TRANSPORTING ..]. 然后这里的内表itab是有条件的,这个itab必须要有table key ...

  6. 痞子衡嵌入式:MCUBootFlasher v3.0发布,为真实的产线操作场景而生

    -- 痞子衡维护的NXP-MCUBootFlasher工具(以前叫RT-Flash)距离上一个版本(v2.0.0)发布过去一年半以上了,这一次痞子衡为大家带来了全新版本v3.0.0,从这个版本开始,N ...

  7. pycharm2021永久激活

    Pycharm破解版地址: 链接: https://pan.baidu.com/s/1dEkzKRFMaeNjWF4h7y2TdQ 提取码: eqr3  Anaconda地址:版本是python3.6 ...

  8. 基于Python的接口自动化-unittest测试框架和ddt数据驱动

    引言 在编写接口自动化用例时,我们一般针对一个接口建立一个.py文件,一条接口测试用例封装为一个函数(方法),但是在批量执行的过程中,如果其中一条出错,后面的用例就无法执行,还有在运行大量的接口测试用 ...

  9. 电脑打不开gitHub的解决方法

    电脑打不开gitHub的解决方法 方法:修改本地的hosts文件 因为Github是国外网站,所以经常会遇到打不开的问题,并且有时能打开但是网速好慢 解决这个问题的方法是 :   C:\Windows ...

  10. mdns

    mdns mdns_百度百科 https://baike.baidu.com/item/mdns 在计算机网络中 , 多播DNS ( mDNS )协议将主机名解析为不包含本地名称服务器的小型网络中的I ...