课程设置与概述

欢迎访问本课程(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 仓库。完成后,您可以将其克隆到本地计算机上:

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

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

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

  1. bash % git clone https://github.com/dabeaz-course/practical-python
  2. bash % cd practical-python
  3. 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审计audit

    导读: MySQL社区版是不带审计功能的,如果要使用MySQL审计,可以考虑使用中间件(例如proxysql)或者是MariaDB的审计插件.这里以MariaDB的审计插件为例,实现MySQL 5.7 ...

  2. collection常用功能:

    collection常用功能: Collection是所有单列集合的父接口,因此在collection中定义了单列集合(List)和(Set)通用的一些方法.这些方法可用于操作所有的单列集合,方法如下 ...

  3. Linux常用命令(df&dh)

    在Linux下查看磁盘空间使用情况,最常使用的就是du和df了.然而两者还是有很大区别的,有时候其输出结果甚至非常悬殊. du的工作原理 du命令会对待统计文件逐个调用fstat这个系统调用,获取文件 ...

  4. 【转】借助LVS+Keepalived实现负载均衡

    一.负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧 当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集群可以是Web应用服务 ...

  5. C语言指针的大小

    C语言指针的大小 今天看到一道题目是这样的,写出以下变量在32位设备上的大小(占多少个字节) 然后其中就有一些指针类型的数据,那么我们知道在C语言中指针的大小都是一样的,不管是有数据类型的还是void ...

  6. 【Java基础】数组和算法

    数组和算法 查找算法 线性查找 ... 二分查找 二分查找要求数据结构是有序的. package com.parzulpan.java.ch03; /** * @Author : parzulpan ...

  7. 【EXPDP】指定导出,只导出函数,导出的时候加上where条件过滤

    expdp导出的时候可以使用parfile这个参数,在parfile中添加想要的导出信息: 这里简单写了几句: vim test.par include=function     --导出函数 inc ...

  8. 单片机—Arduino UNO-R3—学习笔记001

    连接方法 下载Arduino软件 安装完成打开如图所示 观察右下角的连接接口"Arduino Uno在COM(X)" 在工具-->端口-->选择之前查看的端口 即为连接 ...

  9. DNS基础概要

    dns服务系统由客户端和服务器组成,提供域名到ip地址的解析,或者提供ip地址到域名的逆向解析. 1.DNS域名空间 每个dns域名由分级的label构成,如www.sina.com.cn,由www. ...

  10. SAP中用户口令状态的一点说明

    数据元素:XUPWDSTATE 数值      内涵 -2(通常)不能更改口令.-1(每天只允许一次)今天不能更改口令.0可以更改口令,但没有必要更改.1口令为初始值必须更改口令.2口令过期必须更改口 ...