Python programming exercises!
本项目预计包含200道左右的Python编程习题,涵盖从基础语法应用到图论算法的各个方面。
如果可以独立完成本项目的所有习题,相信大家的Python编程能力一定会有极大的提升。本项目习题大部分来自网络,包含checkio、leetcode的在线编程网站,部分习题系原创,大部分题目的解法是由本项目维护者贡献的,少部分习题解答来自stackoverflow等网站。
https://github.com/SEU-CodingTogether/Daily-Python 和 https://github.com/LeoCHANGcn/Daily-Python 两个仓库保持同步更新。
习题按照等级分级,对于初学者,只要能够独立完成**Level-00-Elementary
单元部分的全部习题,就可以认为已经达到了Python语言的入门水平。**
接下来可以着手完成**Level-01-Starting
**单元的编程练习,本部分主要帮助大家进一步熟练运用Python基础语法和部分基本数据结构。
完成这一部之后,读者应该可以使用Python语言独立解决一些简单的小问题。之后,题目的难度不再按照难度等级划分单元,而是按照题目类型或者题目涉及的话题来分类,每个单元都会有初级、中等、挑战三中难度的题目供给大家学习参考。
每周我们都会放出5-10道没有解答示例的练习题【参见本文末尾:题目更新记录,题目更新记录会每周更新1-3次】,希望参与项目的同学可以fork本仓库,完成答案后提出request,如果符合要求,我们会把您的代码并入主分支。我们会在放出题目的下一周将题目答案总结归纳,加入每个题目的解答示例部分。
代码要求如下:
除了**
Level-00-Elementary
**(本单元不接受pull request),其它每个单元下面都会有solutions目录、templates目录和more solutions目录,你提交的答案应该放在more solutions目录中:首先在templates目录下找到对应题目的答题模板,拷贝到more solutions目录下,重命名文件之后,将你的解答填写在这个文件中,保证你的答案通过提供的简单测试样例后,提交pull request。举个例子,比如你想要解答**
Level-01-Starting
** 里面的p01问题,那么你需要到**Level-01-Starting/templates
** 目录下找到s01.py
,将这个文件复制到Level-01-Starting/more solutions
目录下,更名为s01-[Your github username].py
之后,填写答案,运行你的代码,如果没有断言错误抛出,就可以考虑提交pull request了。但是需要注意一点:在你提交之前,请看看solutions和more solutions里面有没有和你的解答类似的方法,如果有的话,就不要再提交了。
对于贡献过大量优秀解答的作者,可以申请为本项目提供习题,同时您也会被加入管理者小组,拥有代码审阅、pull request处理的权利!
您提供的题目统一放入More exercises
目录,习题的题目描述文档名按照p[No.]-[Title].md
命名,比如p001-Decision tree.md
文档结构需要和**Level-00-Elementary
**保持一致:
# Title
## 一、题目描述
**要求**:
**输入**:
**输出**:
**示例**:
## 二、解题示例
### 1.方法1
### 2.方法2
同事,需要提供答题模板,放入More exercises/templates
目录下(答题模板可以参考**Level-01-Starting
**目录下的templates
中的内容);提供答案放入More exercises/solutions
目录下。
2018.09.09 **Level-00-Elementary
**入门篇更新完成。