Python最适合做什么?

news2025/1/15 13:07:22

Python最适合做什么?

最近我在Reddit上讨论了为什么有人会使用Python而不是其他编程语言。这个讨论非常好,因此我想写一篇关于它的文章。

首先,让我告诉你我对Python的看法。Python是我喜欢的一种语言,可以用于各种各样的应用,虽然我同意这种语言有它的缺点,但我确实相信它是一种适合专业人士使用的伟大语言,也适合初学者进入迷人的编程世界。

说到这里,我是否会在每一个项目上都使用Python?可能不会!但有一些领域是Python所擅长的,我想强调这些领域,并解释为什么。

  • API开发
  • 数据科学/人工智能
  • 脚本

让我们详细地回顾一下。

API开发

有一些用Python进行API开发的优秀框架,在这些框架中,有两个在开发社区中最受欢迎的,即DjangoFlask

围绕着API开发的谈话立即进入了网络框架的方向,为什么?嗯......我不相信当你想专注于为你的API编写代码时,你应该编写你自己的网络服务器或框架。

有些人还主张将Python用于一般的web开发,尽管我一般不喜欢在前端部分使用这些框架,我更喜欢使用React或其他任何像VueJS或Ember这样的框架来构建前端。

如果你开始使用Python的API开发,你很可能最终会使用Django或Flask,所以你可能会问,我应该使用这两个中的哪一个?

Django VS Flask

这两个框架都很好,在大多数情况下都可以使用,但是,它们遵循不同的理念,有些人喜欢其中一个而不是另一个,双方都有充分的理由。由于这两个框架在本质上是如此的不同,我将只给你这两个框架的高层次区别,我建议你在决定哪个是最适合你和你的项目之前,关于它们的信息,并尝试它们两个。

哲学。

  • Flask是一个简约的框架,它提供了简单性、灵活性和细粒度的控制。它是非常没有主见的(你可以用它做你想做的事!)。
  • 相反,Django则是一个包罗万象的框架。你可以得到所有的库、管理面板、数据库接口、ORM,甚至是一个坚实的目录结构,让你的应用开箱即用。

数据科学/人工智能

任何时候你想处理数据,从刮削、数据分析、可视化、机器学习或人工智能,Python都将是你最好的朋友。对于这些任务中的每一项,都有一些重要的库,它们是伟大的库,在研究和生产环境中得到了高度的应用。

我不会去讨论这些库的细节,但我想提到几个。Pandas, Numpy, Matplotlib, Seaborn, Tensorflow, Pytorch, scikit-learn, Keras, NLTK, OpenCV。

多亏了这些库,你可以在几乎所有的数据科学或人工智能主题中建立生产准备项目。尽管在这些应用中使用Python有一些缺点(如性能),但在许多情况下,它将是一个很好的选择。

我们谈论的是什么样的项目?

一般来说,Python在数据科学和人工智能方面有很多很多的应用,我在这里提一下Python用于的几个常见项目。

  • 时间序列分析
  • 销售预测
  • 语言处理
  • 情感分析
  • 推荐系统(如音乐、视频等)
  • 分类
  • 计算机视觉
  • 自动驾驶卡
  • 还有很多....

脚本

脚本通常指的是旨在实现简单任务自动化的小程序(通常通过命令行执行)。

让我给你举几个我自己写的脚本的例子,以实现我日常工作流程的部分自动化。

  • 我的博客:我使用Evernote来收集我在网上看到的一切,同时也用来写我的文章。但是,当要发布的时候,我把这些笔记作为草稿上传到我的博客。这个过程在Python上自动发生,每当我把一个笔记标记为 "准备发布 "时,我就运行一个Python脚本,将笔记、格式和草稿复制到我的博客系统中。当然,在我真正能够发布之前,总有一些东西需要我手动修复(主要是由于Evernote奇怪的HTML? 输出)。
  • 备份:我喜欢在云端备份我的东西,但我也在外部硬盘中保留一份备份。我通常对所有进入云端的东西进行加密(Evernote除外,它不允许我这样做)。但当我把备份到硬盘时,我使用了硬盘加密,我不想让它被双重加密,所以当我想把数据备份到硬盘时,我运行一个Python脚本,它将解密数据,然后把它移到硬盘上。

结语

Python是一种非常通用的编程语言,由于它的社区和库,你几乎可以做任何你想做的事情,尽管有时你不应该这样做。没有一种语言可以统治它们,它们都有优点和缺点,Python也不例外。

说到这里,我确实相信Python是伟大的,如果你感到好奇,你可以用Python构建从游戏到嵌入式系统,尽管这些情况可能不是为生产准备的项目,也许我错了,如果是这样请告诉我,我想听听。

 

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

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

相关文章

spark读取elasticSerach

搭建参考:我的这篇 elasticsearch搭建_我要用代码向我喜欢的女孩表白的博客-CSDN博客 为了方便测试,我们先建立个索引,如果没有索引,他也能插入,只是走的是默认插入格式。 不过虽然接触es已经4年了,但是在工作中&…

XSS攻击原理及预防方法

XSS攻击通常都是通过跨站指令代码攻击网站的后台漏洞。它和信息隐性代码攻击攻击的目标不同。前者是透过从Web前端输入信息至网站,导致网站输出了被恶意控制的网页内容,使得系统安全遭到破坏。而后者则是输入了足以改变系统所执行之SQL语句内容的字串&am…

【解决方案】一种简单且实用的化工厂人员定位系统

化工厂人员定位系统是推进我国安全生产状况持续稳定好转的有效载体,对化工行业的科学发展、安全发展起着重要的促进作用。 化工厂安全责任重于泰山,一旦发生事故后果不堪设想。目前,化工企业还存在着缺乏实时监督、缺乏主动干预、缺乏精准救援…

SpringCloud(9)— Elasticsearch聚合和自动补全

SpringCloud(9)— Elasticsearch聚合和自动补全 一 数据聚合 1.聚合的分类 聚合(aggregations)可以实现对文档数据的统计,分析,运算。常见的聚合有三种: 1.桶聚合(Bucket&#x…

磁场传感器调研报告

目录 一.磁场传感器 二.磁场传感器工作原理 2.1霍尔效应原理 2.2霍尔传感器工作原理 三.磁场传感器分类介绍 3.1磁阻敏感器 3.2磁性液体加速度传感器 3.3磁性液体水平传感器 四.磁性传感器的应用 4.1汽车 4.2消费类电子产品 4.3工业智能控制和自动化 五、总结 一.…

iftop工具(网卡流量监控软件)的使用

直接运行iftop&#xff0c;不加任何参数 界面显示 界面上面显示的是类似刻度尺的刻度范围&#xff0c;为显示流量图形的长条作标尺用的。 中间的< >这两个左右箭头&#xff0c;表示的是流量的方向。 TX&#xff1a;发送流量 RX&#xff1a;接收流量 TOTAL&#xff1a;总…

open-local部署之后k8s的kube-scheduler挂掉问题

搭建一套k8s集群之后&#xff0c;本地存储化方案选择了阿里巴巴的open-local&#xff0c;没部署open-local&#xff0c;k8s 的kube-scheduler一切正常&#xff0c;只要按照官方文档部署了open-local&#xff0c;k8s的kube-scheduler就会挂掉&#xff0c;不是被kill掉&#xff…

Go的并发模型

Go的并发模型 文章目录Go的并发模型一、GO并发模型的三要素1.1 操作系统的用户空间和内核空间1.2 线程模型的实现&#xff08;1&#xff09;用户级线程模型&#xff08;2&#xff09;内核级线程模型&#xff08;3&#xff09;两级线程模型1.3 GO线程实现模型MPG二、什么是gorou…

选择题

目录 1058:选择题 输入格式&#xff1a; 输出格式&#xff1a; 输入样例&#xff1a; 输出样例&#xff1a; 代码长度限制: 时间限制: 内存限制: 思路: 1.选择题结构体 1.2 选择题结构体代码 2.判断选择题是否做对函数 2.1 判断选择题是否做对函数代码: 3.选择题的输入…

【并发】深入理解JMM并发三大特性(二)

t【并发】深入理解JMM&并发三大特性&#xff08;二&#xff09; 我们在上一篇文章中提到了JMM内存模型&#xff0c;并发的三大特性&#xff0c;其中对可见性做了详细的讲解&#xff01; 这一篇文章&#xff0c;将会站在硬件层面继续深入讲解并发的相关问题&#xff01; …

将整数字符串转成整数值

题目&#xff1a; 给定一个字符串 str&#xff0c;如果str符合日常书写的整数形式&#xff0c;并且属于 32 位整数的范围&#xff0c;返回 str 所代表的整数值&#xff0c;否则返回 0 。 举例&#xff1a; str "123" 返回 123 str "023" 返回 23 …

springboot整合之统一异常处理

特别说明&#xff1a;本次项目整合基于idea进行的&#xff0c;如果使用Eclipse可能操作会略有不同&#xff0c;不过总的来说不影响。 springboot整合之如何选择版本及项目搭建 springboot整合之版本号统一管理 springboot整合mybatis-plusdurid数据库连接池 springboot整合…

FFmpeg简单使用:过滤器 ---- h264_mp4toannexb

H264有两种封装方式&#xff1a;字节流AnnexB格式 AVCC格式。 1. AnnexB格式 ---- 用于实时播放 开始前缀&#xff08;00000001或000001&#xff09;&#xff0b;NALU数据  绝大部分编码器的默认输出格式   一共有两种起始码start_code    ①3字节0x000001  单帧多s…

C++面向对象特性——多态

C面向对象之多态什么是多态&#xff1f;为什么使用多态&#xff1f;虚函数的定义虚函数的实现机制哪些函数不能被设置为虚函数&#xff1f;虚函数的访问指针访问引用访问对象访问成员函数中的访问构造函数和析构函数中访问纯虚函数抽象类虚析构函数重载、隐藏、覆盖菱形继承虚拟…

spring boot文档阅读笔记——01

目录标题一、文档地址二、第一个spring boot例子三、 Starters&#xff08;spring boot 官方提供的启动器&#xff09;四、SpringBootApplication注释&#xff08;一&#xff09;EnableAutoConfiguration&#xff08;二&#xff09;ComponentScan五、devtools&#xff08;热插拔…

当项目经理看世界杯决赛时…

12月18日&#xff0c;2022卡塔尔世界杯决赛&#xff0c;阿根廷在点球大战中击败卫冕冠军的法国队&#xff0c;捧走大力神杯。这场跌宕起伏的“巅峰对决”&#xff0c;给大家呈现了一场精彩绝伦的比赛。 当阿根廷2-0领先七十多分钟的时候&#xff0c;都以为这局稳了&#xff0c…

跨平台应用开发进阶(五十一):HTML5(富文本内容)连续数字、字母不自动换行问题分析及解决

文章目录一、前言二、问题分析三、解决方法3.1 对 input 标签设置3.2 对 input 标签内的 p 标签设置四、延伸阅读 顶部状态栏穿透问题五、拓展阅读一、前言 项目开发过程中&#xff0c;涉及在Web端维护富文本内容&#xff0c;通过APP端查看的相关的功能&#xff0c;功能描述大…

repo init详解

首先选择manifest源&#xff0c;一般直接使用清华或中科大的镜像源 repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest是清华提供的镜像源 repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest是中国科学技术大学的镜像源 repo init推荐使用-b 分…

未来汽车产业新生态高峰论坛在深圳举行

【2022年12月22日发自深圳】汽车产业正面临百年未有之大变局&#xff0c;以数字化技术为特征的智能网联汽车已经成为全球汽车产业转型升级的战略方向。汽车的属性也从一个机械化的交通工具转变成与各个生态相互连通的移动终端和数字空间。12月21日&#xff0c;由工业和信息化部…

【C++初阶】模板进阶

文章目录非类型模板参数模板特化函数模板特化类模板特化全特化偏特化模板的分离编译模板总结所有测试的代码非类型模板参数 模板参数分类类型形参与非类型形参 1.类型形参即&#xff1a;出现在模板参数列表中&#xff0c;跟在class或者typename之类的参数类型名称。 2.非类型形…