“学习Python能用来做什么?”

news2024/9/24 13:17:40

文章目录

  • 前言
    • 01 Web开发
      • 为什么需要Web框架
      • 应该使用哪种Python Web框架
      • Django和Flask有什么区别
      • 如何选择
    • 02 数据科学
      • 机器学习是什么
      • 将Python用于机器学习
      • 数据分析和数据可视化
      • 使用Python进行数据分析/可视化
      • 如何用Python学习数据分析/可视化
    • 03 脚本
      • 什么是脚本?
    • 04 其他用途
      • 嵌入式应用
      • 游戏开发
      • 桌面应用
      • 关于Python技术储备
        • 一、Python所有方向的学习路线
        • 二、Python基础学习视频
        • 三、精品Python学习书籍
        • 四、Python工具包+项目源码合集
        • ①Python工具包
        • ②Python实战案例
        • ③Python小游戏源码
        • 五、面试资料
        • 六、Python兼职渠道


前言

导读:如果你想学Python,或者你刚开始学习Python,那么你可能会问:“我能用Python做什么?”

这个问题不好回答,因为Python有很多用途。

但是随着时间,我发现有Python主要有以下三大主要应用:

Web开发

  • 数据科学:包括机器学习、数据分析和数据可视化
  • 脚本
  • 本文将依次介绍。

在这里插入图片描述

01 Web开发

Django和Flask等基于Python的Web框架最近在Web开发中非常流行。

这些Web框架可以帮助你用Python编写服务器端代码(后端代码)。这是在你的额服务器上运行的代码,而不是运行在用户设备和浏览器的代码(前端代码)。

为什么需要Web框架

因为用Web框架可以更容易地构建通用后端逻辑。这包括将不同的URL映射到Python代码块,处理数据库以及生成用户在浏览器中看到的HTML文件。

应该使用哪种Python Web框架

Django和Flask是最流行的两种Python Web框架。如果你刚刚入门,我建议使用其中一种。

Django和Flask有什么区别

Gareth Dwyer 关于这个问题有一篇出色的文章,在这里我引用几段:

主要区别

  • *Flask:能够实现简单、灵活和细致的控制。并能让你自己决定实现方式。
  • Django:提供了全面的体验:你可以获得管理面板、数据库接口、ORM(对象关系映射)以及开箱即用的应用程序和项目的目录结构。

如何选择

  • Flask:如果你关注的是经验和学习的机会,或者你想更多地控制使用哪些组件,比如你想使用哪些数据库以及如何与其进行交互。
  • Django:如果你关注最终产品,或者你正在研究一个简单的应用,比如新闻网站、网店或博客,并且你希望有单一实现的方式。

*换句话说,如果你是初学者,Flask可能是更好的选择,因为它要掌握的组件更少。此外,如果你想要更多的定制,那就选Flask。

根据我的数据工程师朋友Jonathan T Ho的说法,由于Flask 的灵活性,在创建REST API时,Flask 比Django 更适合。

另一方面,如果你想直接构建一些东西,Django可能会让你更快实现。

02 数据科学

数据科学,这里包括机器学习,数据分析和数据可视化。

机器学习是什么

假设你想开发一个能够自动检测图片内容的程序。给出图1,你希望程序识别这是一只狗。

在这里插入图片描述

▲图1

给出图2,希望程序能识别这是一张桌子。

在这里插入图片描述

▲图2

你可能会说,我可以写一些代码来做到这点。例如,如果图片中有很多浅棕色像素,那么可以识别是狗。

或者可以检测图片中的边缘,如果有很多直的边缘,那么就是桌子。

但这种方法很快就不好用了。如果图片中的狗不是棕色毛的怎么办?如果图片只显示桌子的圆形部分怎么办?

这里就需要用到机器学习了。

机器学习通过实现算法,该算法能够自动检测输入中的模式。

例如,你将1000张狗的图片和1000张桌子的图片输入给机器学习算法,让它掌握狗和桌子间的区别。那么当你给出新的图片让它识别是狗还是桌子时,它就能够进行判断。

这有点类似孩子学习新事物的方式。孩子是如何学习认知狗或桌子的呢?就是通过大量的例子。

你不会明确告诉孩子:“如果某个毛茸茸的东西有浅棕色的毛发,那么就可能是狗。”

你会说,“这是狗,这也是狗。而这是桌子,那个也是桌子。“

机器学习算法的方式大致相同。

我们可以将相同的想法应用于:

  1. 推荐系统:比如YouTube,亚马逊和Netflix
  2. 人脸识别
  3. 语音识别
  4. 以及其他应用。

你听过的热门机器学习算法包括:

  1. 神经网络
  2. 深度学习
  3. 支持向量机
  4. 随机森林

你可以使用上述任何算法来解决前面提到的图片标签问题。

将Python用于机器学习

有一些热门的机器学习库和Python框架。其中两个最热门的是scikit-learn和TensorFlow。

scikit-learn带有一些内置的热门机器学习算法。

TensorFlow是一个低级库,能让你创建自定义机器学习算法。

如果你刚开始进行机器学习项目,我会建议你先从scikit-learn开始。如果你开始遇到效率问题,那么可以使用TensorFlow。

数据分析和数据可视化

假设你在一家在线销售产品的公司工作。作为数据分析师,你会绘制这样的条形图。

在这里插入图片描述

▲条形图1 - 用Python生成

从这张图中可以看到在某个周日,男性用户购买了400多件产品,女性用户购买了350件产品。

作为数据分析师,对此你会提出一些可能的解释。明显的解释是,该产品在男性用户中更受欢迎。另一种是样本量太小,而这种差异是偶然的。还可能呢是由于某种原因,男性往往在周日才购买该产品。

为了理解哪种解释是正确的,你可以绘制另一个图。

在这里插入图片描述

▲折线图1 - 用Python生成

不止看周日的数据,还要看到一周的数据。从这张图表中可以看出,在不同的日子里这种差异比较一致。

从这个分析中你会得出结论:这种产品在男性中比在女性中更受欢迎。

但如果你看到像这样的图表呢?

在这里插入图片描述

▲折线图2 - 用Python生成

那么,怎么解释周日的差异呢?

你可能会说,也许出于某种原因男性只在周日才会更多地购买这款产品。或许这只是巧合。

我在谷歌和微软工作时所做的数据分析工作与这个例子非常相似,只是更复杂一些。在谷歌时我使用Python进行分析,而我在微软使用JavaScript。

在这两家公司我都使用SQL从数据库中提取数据。然后,我用Python和Matplotlib(在谷歌)或JavaScript和D3.js(在微软)来可视化和分析这些数据。

使用Python进行数据分析/可视化

进行数据可视化时,Matplotlib是非常热门的库。

Matplotlib很棒,因为:

容易上手

seaborn等库是基于它的,学习Matplotlib可以帮助你以后学习其他库。

如何用Python学习数据分析/可视化

你首先应该了解数据分析和可视化的基础知识。在学习了数据分析和可视化的基础知识之后,学习统计学基础知识也将会很有帮助。

03 脚本

什么是脚本?

脚本通常是指编写能够自动执行简单任务的小程序。

我曾经在日本的一家小型创业公司工作,公司有邮件支持系统,这用来回复客户通过邮件发送给我们的问题。

在那儿工作时,我的任务是计算包含关键字的邮件数量,以便分析我们收到的电子邮件。这可以手动完成,但我写了一个简单的脚本来自动执行此任务。

当时我们使用了Ruby,但对于这类任务Python也是不错的选择。Python适合这类任务,因为它语法简单,易于编写,而且进行测试也很快。

04 其他用途

嵌入式应用

我不是这方面的专家,但我知道Python可以与Rasberry Pi一起用,在硬件爱好者中很流行。

游戏开发

你可以用PyGame来开发游戏,但这并不是最受欢迎的游戏引擎。你可以用它来开发业余爱好项目,但如果你对游戏开发很认真,建议不要选它。

我建议使用Unity的C#,这是最受欢迎的游戏引擎之一。它能让你为许多平台开发游戏,包括Mac、Windows、iOS和Android。

桌面应用

你可以用Python的Tkinter,但这并不是最热门的选择。Java,C#和C ++等语言似乎更受欢迎。

最近,一些公司也开始使用JavaScript来开发桌面应用程序。例如,Slack的桌面应用是Electron构建的。它能让你用JavaScript构建桌面应用程序。

就个人而言,如果我要开发桌面应用,我会选择使用JavaScript。它能让你重新使用网络版本的一些代码。

当然,我并不是桌面应用的专家,所以如果你有不同的看法,评论中告诉我。


关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

保存图片微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、Python基础学习视频

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~在这里插入图片描述
在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述
因篇幅有限,仅展示部分资料

三、精品Python学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述

四、Python工具包+项目源码合集
①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

六、Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述
在这里插入图片描述
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以保存图片微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1272283.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

STM32---时钟树

写在前面:一个 MCU 越复杂,时钟系统也会相应地变得复杂,如 STM32F1 的时钟系统比较复杂,不像简单的 51 单片机一个系统时钟就 可以解决一切。对于 STM32F1 系列的芯片,其有多个时钟源,构成了一个庞大的是时…

Linux下的文件IO之系统IO

1. 知识点 读入写出,切记以我们程序为中心向文件或者别的什么东西读入写出(输入流输出流) 人话就是 文件向我们程序就是读入 程序向文件或者别的什么就是写出 2. open打开文件 open.c /****************************************************…

算法:Java计算二叉树从根节点到叶子结点的最大路径和

要求从根节点到叶子结点的最大路径和,可以通过递归遍历二叉树来实现。对于二叉树中的每个节点,我们都可以考虑包含该节点的最大路径和。在递归的过程中,我们需要不断更新全局最大路径和。 具体的思路 递归函数设计: 设计一个递归函…

“降本增效”才是选择低代码开发的主旋律

长期以来,常规软件开发是一项艰苦而详尽的工作。开发人员编写代表指令和数据的单行代码。他们将代码组织为功能例程和模块,这些例程和模块提供了软件的功能。这种方法需要在应用程序开发范围内对各个方面的技术都有详细的知识:开发语言&#…

Python 2 和 Python 3 的区别

Python 2 和 Python 3 之间有很多重要的区别,特别是在处理编码、字符串和类方面的区别。Python 2和Python 3的主要区别包括以下几点: Unicode处理:Python 2有专门的Unicode字符串类型(例如,u"string"&#…

Verilog 入门(四)(门电平模型化)

文章目录 内置基本门多输入门简单示例 内置基本门 Verilog HDL 中提供下列内置基本门: 多输入门 and,nand,or,nor,xor,xnor 多输出门 buf,not 三态门上拉、下拉电阻MOS 开关双向开关 门级逻辑…

Youtube如何做SEO关键词挖掘

做好Youtube的SEO优化,可以使我们的视频得到更多的展示,更多的点击和观看,就能获得更多的粉丝和流量。一方面通过视频做引流到目标网站进行转化赚钱,另一方面可以通过涨粉接youtube广告赚钱。要做seo最关键的一步在于关键词的挖掘…

蓝桥杯算法心得——仙界诅咒(dfs)

大家好,我是晴天学长,搜索型的dfs,差点开二维矩阵了,仔细一想,没那么夸张啊,哈哈哈,需要的小伙伴可以关注支持一下哦!后续会继续更新的。💪💪💪 1…

vscode集成git

1、首先电脑要安装git 打开git官网地址:Git进行下载,如下图界面: 如图片中描述:一般进入官网后会识别电脑对应系统(识别出了我的电脑是Windows系统 。如果未识别到电脑系统,可在左侧选择自己电脑对应的系统…

NFTScan 正式上线 Starknet NFTScan 浏览器和 NFT API 数据服务

2023 年 11 月 30 号,NFTScan 团队正式对外发布了 Starknet NFTScan 浏览器,将为 Starknet 生态的 NFT 开发者和用户提供简洁高效的 NFT 数据搜索查询服务。NFTScan 作为全球领先的 NFT 数据基础设施服务商,Starknet 是继 Bitcoin、Ethereum、…

pandas-profiling / ydata-profiling介绍与使用教程

文章目录 pandas-profilingydata-profilingydata-profiling实际应用iris鸢尾花数据集分析 pandas-profiling pandas_profiling 官网(https://pypi.org/project/pandas-profiling/)大概在23年4月前发出如下公告: Deprecated pandas-profilin…

QT 项目中添加文件夹(分类文件)

为了更方便的整理项目的文件,添加文件夹把文件进行分类。 1.首先在项目文件中创建新的文件夹 2.把需要归类的文件放入新建的文件中 3.右键然后选择add..... 4.运行此程序,会报错因为文件路径改变了,需要在.pro中修改路径 注意事项 文件夹内部…

OFDM通信连路仿真学习

文章目录 前言一、前置知识1、块状导频与梳状导频①、相似点②、区别③、其他 2、其他知识 二、仿真任务及方案1、仿真任务2、仿真方案 三、MATLAB仿真1、MATLAB 源码2、程序流程3、仿真结果①、打印信息③、8PSK 星座图②、脉冲成型图③、ETU300登加AWGN信道下误比特率曲线 四…

【人工智能Ⅰ】实验4:贝叶斯分类

实验4 贝叶斯分类 一、实验目的 1. 了解并学习机器学习相关库的使用。 2. 熟悉贝叶斯分类原理和方法,并对MNIST数据集进行分类。 二、实验内容 1. 使用贝叶斯方法对mnist或mnist variation数据集进行分类,并计算准确率。数据集从网上下载&#xff0…

【C++】异常处理 ② ( 异常捕获类型 | 异常捕获机制 - 严格匹配异常类型 | 未知异常捕获 - 不知道异常类型 )

文章目录 一、异常捕获机制 - 严格匹配异常类型1、异常捕获机制 - 严格匹配异常类型2、代码示例 - 异常捕获严格匹配异常类型 二、异常捕获机制 - 未知异常捕获1、未知异常捕获 - 不知道异常类型2、代码示例 - 未知异常捕获 一、异常捕获机制 - 严格匹配异常类型 1、异常捕获机…

嵌入式Linux:配置Ubuntu系统环境和安装开发工具

目录 1、配置Ubuntu系统环境 1.1、APT下载工具 1.2、更新语言 1.3、更新本地数据库 1.4、安装VIM编辑器 1.5、Ubuntu 和 Windows 文件互传 1.6、开启NFS服务 1.7、开启SSH服务 2、安装开发工具 2.1、Ubuntu安装VSCode 2.2、Windows安装MobaXterm 安装好Ubuntu系统环…

需求不明确的情况下,测试该如何处理?

当需求不明确的情况下,测试团队可以采取以下措施来处理: 1. 与项目团队进行沟通:测试团队应与项目团队密切合作,与业务分析师、产品经理等相关人员进行沟通,以获取更多的需求细节和背景信息。通过与相关方的交流&…

No matching version found for @babel/compat-data@^7.23.5 处理

npm ERR! notarget No matching version found for babel/compat-data^7.23.5 处理 报错信息 npm WARN ERESOLVE overriding peer dependency npm ERR! code ETARGET npm ERR! notarget No matching version found for babel/compat-data^7.23.5. npm ERR! notarget In most …

Shopee引流妙招!Shopee产品标签重要吗?教你有效打标签引爆流量!

对Shopee平台的卖家来说,在新产品上架时除了要注重产品title、介绍以及图文的优化,还有一件事情很重要,那就是——产品打标签。 对于每个跨境电商卖家来讲,对产品打标签都是必不可少的一个运营环节 下面小宇就来告诉大家&#xf…

字符串的旋转

字符串的旋转 左旋(逆时针) 示例:abcd------>bcda 右旋(顺时针) 示例:abcd------>dabc 例: 输入若干个字符串(1≤长度≤1000)右旋转串后的n(-长度…