《practical python programming》的中文翻译

Overview

欢迎光临

大约 25 年前,当我第一次学习 Python 时,发现 Python 竟然可以被高效地应用到各种混乱的工作项目上,我立即被震惊了。15 年前,我自己也将这种乐趣教授给别人。教学的结果就是本课程——一门实用的学习 Python的课程。本课程自 2007 年面世以来,已经被应用到400多个团体的面对面教学中。这些团体中包含了交易员、系统管理员、天文学家、修理工以及上百名使用 Python 帮助火星探测器着陆的火箭科学家。现在,我很高兴能够在知识共享协议下将这份课程共享给大家。

GitHub Pages | GitHub Repo.

--David Beazley (https://dabeaz.com), @dabeaz

这是什么?

你在这里看到的这份材料是以讲师为主导的 Python 培训课程的核心内容。该课程用于企业培训和职业发展。自 2007 年以来,这门课程一直在不断地完善,并且在现实课堂中经受了实战的检验。一般来说,这门课程在3至4天内被面授给学习者——大约需要25至35个小时的高强度学习。这包括完成大约 130 道动手编程练习。

课程受众

本课程的学员通常是专业的科学家、工程师和程序员,他们已经有至少一种其它编程语言的经验。不需要事先掌握 Python 的相关知识,但是需要具备通用的编程知识。大部分学员觉得这门课程具有挑战性——尽管他们已经使用过 Python 进行编程。

课程目标

本课程的目标是涵盖 Python 编程的基础方面,重点是脚本编写、数据操作和程序组织。在本课程结束时,学员应该能够开始独立地编写有用的 Python 程序,或者能够理解和修改合作者编写的代码。

课程要求

要完成本门课程,需要安装 Python 3.6 或者更高的版本,以及腾出学习本课程的时间。

本课程不包含的内容

这不是一门为计算机编程初学者开设的课程。本课程假设你已经有 Python 语言或者其它语言的编程经验。

这不是一门关于 web 开发的课程。那是另一个“马戏团”,然而,如果你留在这个“马戏团”,你仍会看到一些有趣的表演——只是没有动物。(译者注:原文这里使用的是 circus,可以理解为:本课程不涉及 web 开发, web 开发是另一个主题,但是如果你仍留下来学习本课程,你也会有所收获。)

这不是一门为软件工程师开设的关于如何编写和维护一个百万行 Python 应用程序的课程。我不写那样的程序,大多数使用 Python 的公司也不这样做,同样,你也不需要。这样的内容已经删除了。

马上带我访问课程

请点击 这里

社区讨论

想要讨论课程吗?你可以在 Gitter 上加入会话。我不一定能够回复每个人,但其他人也许可以帮上忙。

致谢

Llorenç Muntaner 在将课程内容从 Apple Keynote 转换为你在这里看到的在线版本方面发挥了重要作用。

在过去的 12 年里,不同的讲师曾在不同的时间讲过这门课程。这其中包括(按字母顺序):Ned Batchelder, Juan Pablo Claude, Mark Fenner, Michael Foord, Matt Harrison, Raymond Hettinger, Daniel Klein, Travis Oliphant, James Powell, Michael Selik, Hugo Shi, Ian Stokes-Rees, Yarko Tymciurak,Bryan Van de ven, Peter Wang, and Mark Wiebe。

还要感谢成千上万学习过本门课程的学员,你们对本课程进行反馈以及讨论,为本课程的成功做出了贡献。

问题和解答

问题:有课程视频可以观看吗?

没有,这门课程是让你写代码的,而不是看别人写代码。

问题: 这门课程是如何授权的?

本课程采用知识共享协议 ShareAlike 4.0 国际许可协议进行授权。

问题: 我教自己的 Python 课程时可以使用这份材料吗?

可以,只要注明出处即可。

问题: 我可以制作衍生作品吗?

可以,只要这些作品遵循相同的许可条款并且提供出处。

问题:我可以把这门课程翻译成其它语言吗?

可以,这非常棒。完成后请给我发送一个链接。

问题: 我可以直播课程或者制作视频吗?

可以,去做吧。如果你这样做,你将会学到很多 Python 知识。

问题: 为什么没有包含某个内容?

在 3 -4 天的时间里,只能安排这么多内容了。如果没有讲某个内容,很可能是因为曾经讲了这个内容,但是大家头都炸了,或者一开始就没有足够到时间去讲。另外,这是一门课程,而不是 Python 参考手册。

问题: 你接受拉取请求(pull requests)吗?

如果你能为本课程报告 Bug,我们将不胜感激,可以通过 issue tracker 进行提交。

除非是被邀请,否则不接受拉取请求,请先提交 issue。

Owner
编程人
Life is short, you need Python.
编程人
Python template for Advent of Code event

Advent of Code Python Starter A tamplate for Advent of Code write in Python. Usage The project use poetry for project manager. Clone this repository a

Leonardo Gago 6 Dec 31, 2022
CPLib is the abbreviation of Competitive Programming Library.

CPLib CPLib is the abbreviation of Competitive Programming Library. It aims to be a general template and optimization library for competitive programm

12 Oct 16, 2021
Fix Eitaa Messenger's Font Problem on Linux

Fix Eitaa Messenger's Font Problem on Linux

6 Oct 15, 2022
End-to-End text sumarization, QAs generation using flask.

Help-Me-Read A web application created with Flask + BootStrap + HuggingFace 🤗 to generate summary and question-answer from given input text. It uses

Ankush Kuwar 12 Nov 13, 2022
samples of neat code

NEAT-samples Some samples of code and config files for use with the NEAT-Python package These samples are largely copy and pasted, so if you

Harrison 50 Sep 28, 2022
Async-first dependency injection library based on python type hints

Dependency Depression Async-first dependency injection library based on python type hints Quickstart First let's create a class we would be injecting:

Doctor 8 Oct 10, 2022
WriteAIr is a website which allows users to stream their writing.

WriteAIr is a website which allows users to stream their writing. It uses HSV masking to detect a pen which the user writes with. Plus, users can select a wide range of options through hand gestures!

Atharva Patil 1 Nov 01, 2021
TickerRain is an open-source web app that stores and analysis Reddit posts in a transparent and semi-interactive manner.

TickerRain is an open-source web app that stores and analysis Reddit posts in a transparent and semi-interactive manner

GonVas 180 Oct 08, 2022
Easytile blender - Simple Blender 2.83 addon for tiling meshes easily

easytile_blender Dead simple, barebones Blender (2.83) addon for placing meshes as tiles. Installation In Blender, go to Edit Preferences Add-ons

Sam Gibson 6 Jul 19, 2022
A common, beautiful interface to tabular data, no matter the format

rows No matter in which format your tabular data is: rows will import it, automatically detect types and give you high-level Python objects so you can

Álvaro Justen 834 Jan 03, 2023
Convert Roman numerals to modern numerals and vice-versa

Roman Numeral Conversion Utilities This is a utility module for converting from and to Roman numerals. It supports numbers upto 3,999,999, using the v

Fictive Kin 1 Dec 17, 2021
Team Curie is a group of people working together to achieve a common aim

Team Curie is a group of people working together to achieve a common aim. We are enthusiasts!.... We are setting the pace!.... We offer encouragement and motivation....And we believe TeamWork makes t

4 Aug 07, 2021
Easily map device and application controls to a midi controller

pymidicontroller Introduction Easily map device and application controls to a midi controller

Tane Barriball 24 May 16, 2022
Coderslab Workshop Projects

Workshop Coderslab workshop projects that include: Guessing Game Lotto simulator Guessing Game vol.2 Guessing Game vol.3 Dice 2001 Game Technologies P

Szymon Połczyński 1 Nov 06, 2021
Python data loader for Solar Orbiter's (SolO) Energetic Particle Detector (EPD).

Data loader (and downloader) for Solar Orbiter/EPD energetic charged particle sensors EPT, HET, and STEP. Supports level 2 and low latency data provided by ESA's Solar Orbiter Archive.

Jan Gieseler 9 Dec 16, 2022
Tethered downgrade 64-bit iDevices vulnerable to checkm8

ra1nstorm Tethered downgrade 64-bit iDevices vulnerable to checkm8 Since the purpose of this tool is to tethered downgrade a device, after restoring p

mini_exploit 65 Nov 08, 2022
Transform Python source code into it's most compact representation

Python Minifier Transforms Python source code into it's most compact representation. Try it out! python-minifier currently supports Python 2.7 and Pyt

Daniel Flook 403 Jan 02, 2023
Calculatrix is a project where I'll create plenty of calculators in a lot of differents languages

Calculatrix What is Calculatrix ? Calculatrix is a project where I'll create plenty of calculators in a lot of differents languages. I know this sound

1 Jun 14, 2022
A variant caller for the GBA gene using WGS data

Gauchian: WGS-based GBA variant caller Gauchian is a targeted variant caller for the GBA gene based on a whole-genome sequencing (WGS) BAM file. Gauch

Illumina 16 Oct 13, 2022
A telegram bot which programed to countdown.

countdown-vi this is a telegram bot which programed to countdown. usage well, first you should specify a exact interval. there is 5 column, very first

Arya Shabane 3 Feb 15, 2022