Django和Flask是两个最流行的Python web框架。如果你刚刚开始,我建议你使用其中的一种。
Django和Flask有什么不同?
主要对比:
- Flask提供了简单、灵活和细粒度的控制。它是无约束的(它让您决定如何实现事物)。
- Django提供了一种全面的体验:为您的应用程序和项目提供了一个管理面板、数据库接口、ORM[对象-关系映射]和目录结构。
你应该选择:
- 如果您关注经验和学习机会,或者您想要更多地控制使用哪些组件(例如您想要使用哪些数据库以及您想要如何与它们交互),那么您可以使用Flask。
- Django,如果你专注于最终的产品。特别是如果您正在处理一个简单的应用程序,例如一个新闻站点、一个电子商店或博客,并且您希望总是有一个单一的、明显的做事方式。
换句话说,如果您是初学者,那么Flask可能是一个更好的选择,因为它需要处理的组件比较少。此外,如果您想要更多的定制,Flask是一个更好的选择。
另一方面,如果您希望直接构建一些东西,Django可能会让您更快地实现这一点。
数据科学
首先,让我们复习一下什么是机器学习
我认为解释机器学习的最好方法是给你们举个简单的例子。
假设您想要开发一个程序来自动检测图片中的内容。
因此,根据下面这张图(图1),您希望您的程序能够识别它是一只狗。
图1
考虑到下面的另一个(图2),您希望您的程序认识到它是一个桌子。
图2
你可能会说,我可以写一些代码来实现。例如,如果图片中有很多浅棕色的像素,那么我们可以说它是一只狗。或者,你可以找出如何检测图片的边缘。然后,你可能会说,如果有很多条直边,那么它就是一个表格。
然而,这种方法很快就会变得棘手。如果照片里有一只没有棕色毛发的白狗呢?如果这张图只显示了桌子的圆形部分呢?
什么是机器学习。
机器学习通常实现自动检测给定输入中的模式的算法。
比如说,你可以给一个机器学习算法提供1000张狗的图片和1000张桌子的图片。然后,它会学习狗和桌子之间的区别。当你给它一张狗或桌子的新图片时,它就能认出这是哪一张。
我认为这有点类似于婴儿学习新事物的方式。一个婴儿怎么知道一个东西长得像狗,而另一个东西长得像桌子?可能是从一堆例子中得到的。
你可能不会明确地告诉婴儿,“如果什么东西是毛茸茸的,长着浅棕色的毛,那么它可能是一只狗。”你可能会说:“那是一只狗。”这也是一只狗。这是一张桌子。那张也是桌子。”
机器学习算法也是如此。你可以把同样的想法应用到:
- 推荐系统(想想YouTube、Amazon和Netflix)
- 人脸识别
- 语音识别
在其他应用程序中。你可能听说过的流行的机器学习算法包括:
- 神经网络
- 深度学习
- 支持向量机
- 随机森林
您可以使用上面的任何一种算法来解决我前面解释的图片标记问题。
机器学习中的Python
Python有很多流行的机器学习库和框架。其中最受欢迎的两个是scikit-learn和TensorFlow。
- scikit-learn内置了一些更流行的机器学习算法。我上面提到了其中的一些。
- TensorFlow更像是一个底层库,它允许您构建自定义机器学习算法。
如果你刚刚开始一个机器学习项目,我建议你先从scikit-learn开始。如果你开始遇到效率问题,那么我将开始研究TensorFlow。
我应该如何学习机器学习?
为了学习机器学习的基础知识,我推荐斯坦福吴恩达的机器学习课程。
请注意,你需要微积分和线性代数的基础知识来理解这些课程中的一些材料。
然后,在Kaggle实践您从这些课程中学到的内容。这是一个网站,人们在这里竞争,为一个给定的问题建立最好的机器学习算法。他们也有很好的初学者教程。
使用Python进行数据分析/可视化
用于数据可视化的最流行的库之一是Matplotlib。这是一个很好的入门库,因为:这很容易开始
一些其他的库,比如seaborn就是基于它的。因此,学Matplotlib将帮助您以后学习这些其他库。
脚本
脚本是什么?
脚本编制通常是指编写用于使简单任务自动化的小程序。
那么,让我给你们一个我个人经历的例子。
我曾经在日本的一家小公司工作,那里有一个电子邮件支持系统。这是一个我们用来回复客户通过电子邮件发送给我们的问题的系统。
当我在那里工作的时候,我的任务是计算包含特定关键词的电子邮件的数量,这样我们就可以分析收到的电子邮件。我们可以手动完成它,但是我写了一个简单的程序/简单的脚本来自动化这个任务。
实际上,我们当时使用的是Ruby,但是Python也是完成这种任务的好语言。Python适合这种类型的任务,主要是因为它有相对简单的语法和易于编写。它还可以快速地用它编写一些小的东西并对其进行测试。
游戏呢?
你可以使用PyGame库来开发游戏,但它并不是最流行的游戏引擎。你可以用它来建立一个兴趣项目,但我个人不会选择它,如果你是认真的游戏开发。
相反,我建议您从Unity开始使用c#,它是最流行的游戏引擎之一。它允许你在许多平台上创建游戏,包括Mac, Windows, iOS和Android。
关于Python技术储备
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析学习等教程。带你从零基础系统性的学好Python!
一、Python学习大纲
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、Python必备开发工具
三、入门学习视频
如果你也是看准了Python,想自学Python,在这里为大家准备了丰厚的免费学习大礼包,带大家一起学习,给大家剖析Python兼职、就业行情前景的这些事儿。
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。
四、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
成为一个Python程序员专家或许需要花费数年时间,但是打下坚实的基础只要几周就可以,如果你按照我提供的学习路线以及资料有意识地去实践,你就有很大可能成功! 最后祝你好运!!!