Python相对于shell的优点:

(1)Python不需要记忆太多的命令,语法简单,有C基础的人学起来非常容易上手,易于使用。而shell要学的命令太多了,但常用的命令不是太多。

(2)Python可移植性好,它的标准是统一的,,跨平台(比如:Windows和Linux),严谨,不会出现因为平台的不同运行结果不同,但shell的命令在各个平台上还有些不一样。

(3)Python要更加强大,shell是一种命令语言,同时也可以看成是一个命令解释器,用于接收诸如awk、sed的命令调用等完成相关的功能。而Python则是一种编程语言,Python提供给程序员更大的自由度和灵活性,以完成shell所不能完成或者难于完成的编码任务,如实现面向对象的模块化设计、操作服务器数据库等等。

(4)Python支持面向对象、支持可扩展性和可嵌入性,同时提供了功能丰富的库。

(5)性能方面:很明显地,Python的执行效率要高于shell,有一个很充分的理由就是shell本身的各种进程间IPC通信要造成相当大的开销。而Python底层是用C实现的,其性能可以接近于C,但具体相同功能的Python代码量却要比C短上很多倍!因此,按照性能排序:C > Python > shell,按照开发效率排序:shell > Python > C。

shell的相对python优点:

(1)简单,开发迅速,专注系统(比如:Linux)管理领域。

(2)Shell脚本语言的优势在于处理偏操作系统底层的业务。

Python的缺点:

(1)速度慢,Python 的运行速度相比C语言确实慢很多,跟JAVA相比也要慢一些,因此这也是很多所谓的大牛不屑于使用Python的主要原因,但其实这里所指的运行速度慢在大多数情况下用户是无法直接感知到的,必须借助测试工具才能体现出来,比如你用C运一个程序花了0.1s,用Python是0.01s,这样C语言直接比Python快了10s,算是非常夸张了,但是你是无法直接通过肉眼感知的,因为一个正常人所能感知的时间最小单位是0.15-0.4s左右,哈哈。其实在大多数情况下Python已经完全可以满足你对程序速度的要求,除非你要写对速度要求极高的搜索引擎等,这种情况下,当然还是建议你用C去实现的。

(2)代码不能加密,因为PYTHON是解释性语言,它的源码都是以名文形式存放的,不过我不认为这算是一个缺点,如果你的项目要求源代码必须是加密的,那你一开始就不应该用Python来去实现。

(3)线程不能利用多CPU问题,这是Python被人诟病最多的一个缺点,GIL即全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win thread,完全由操作系统调度线程的执行。一个python解释器进程内有一条主线程,以及多条用户程序的执行线程。即使在多核CPU平台上,由于GIL的存在,所以禁止多线程的并行执行。

语言的选择没有一定之规,主要还要看你的应用,和你熟悉语言,如果你熟悉shell且已经满足工作了,就没有必要放弃而改用python,相反,如果对shell不熟,又懂python,那么如果你用python可以完成,又何必纠结于shell呢?如果是跨平台,用python显得更加方便。其实在实际工作中由于,工作本身的限制,选择用哪个是没有那么纠结的。如果是学习,那么多学一点总是好的。

学shell和python哪个难_shell与python的优劣对比到底用哪个相关推荐

  1. Python自学难吗?Python课程主要学些什么内容?

    自学一门技能,本身就有难度,更何况还是编程类型的Python,要是有兴趣还好说,兴趣是原始动力.但是光有兴趣还远远不够,要足够坚持才能学有所成.那么Python自学难吗?本文将为大家来解答! 前期可以 ...

  2. r perl python电脑要求_Shell Perl Python 介绍

    一. Shell 文字操作系统与外部最主要的接口就叫做shell.shell是操作系统最外面的一层.shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系统 ...

  3. python太难_传说中Python最难理解的点,看这完篇就够了

    这不是我第一次学Python入门课,去年.前年我都学过Python入门.所以文章的标题一点都没有标题党的意思.但是整个入门篇还有一个最难的东西没有讲,这个知识点好多书里面对这块要么不讲,要么就是讲的太 ...

  4. 计算机二级python考试难吗,计算机二级Python难考吗

    python计算机二级难吗 不难python蟒蛇python是这些编程里最简洁的语言,真的,毫不夸张,比如,c语言打印一句话是#include    int main(){printf("h ...

  5. python学起来难不难-python很难学?学起来很吃力,想放弃?看别人是怎样学习的...

    其实吧, 你也没不能接受别人一分钟能赚你一辈子的钱吧- 比尔盖茨动动手指就有一套房子,你不是也没觉得有什么不对吗? 那你为什么不能接受有人一分钟能学你一辈子的知识- 别人用一分钟学你一个小时的事情,不 ...

  6. python学起来难不难-自学Python很难吗,为何会看不进去!

    原标题:自学Python很难吗,为何会看不进去! 首先学习python一定要以实用性为导向! 盲目看教程,结果大多是浅尝辄止,从入门到放弃.这里小九想给大家指引一条清晰的规划路!如何在一个月内入门py ...

  7. 0基础学python难吗-零基础入门学习Python技术难不难?

    原标题:零基础入门学习Python技术难不难? 近几年对python人才爆发式需求,导致很多人转行进入python开发行业,现如今Python这门语言的就业前景会非常好.相对于其他来说,它语法简单易读 ...

  8. python难学嘛-python语言难学吗

    python就是以他简单易学出名的.几乎是现在最简单,却可塑性最高的语言了.一般有其它编程语言基础的,自学,三小时左右就能学会.现在Python都有给小朋友的教程,简单程度可见一般. Python的定 ...

  9. python学精通要多久-学Python编程难吗 从入门到精通学习Python要多久

    对于很多新手而讲,学Python无疑是一件非常令人头痛的事情,不知道无从下手,大家经常会问:象这样没有一点基础学Python,大概要多久才能学会学精?很多初学者都有这样的疑问,Python需要多长时间 ...

最新文章

  1. mysql主从复制延时性问题_MySQL主从同步延迟原因及解决办法
  2. FMDB/SQLCipher数据库管理
  3. c#学习总结(一)---Mr.Zhang
  4. 如何使用Visual Studio创建SQL Server数据库项目
  5. 政府安全资讯精选 2017年第十八期 工信部近三年将466个“问题APP”纳入黑名单;阿里云成为全球唯一完成德国C5云安全基础附加标准审计云服务商...
  6. 进销存系统设计说明书
  7. springBoot搭配java小爬虫 获取百词斩单词释义
  8. Java表格Table冻结前几列或者前几行,其余行或列自由滑动。
  9. java写netcdf_[转]netcdf入门
  10. RocketMQ可视化Web管理界面
  11. Tuscany SCA V1.0中的扩展机制和启动过程中的扩展点[11月29日更新]
  12. printf打印字符串的时候可以printf(“%s“,buf);buf可以是字符串名或者指针
  13. volatile 与处理器的嗅探技术
  14. 利率下行期 财该怎么理
  15. Python学习笔记:第十站 水晶球不调用不动
  16. Go语言版黑白棋(十一):机器落子
  17. SBM模型分析全流程
  18. android 实现微信的开门效果
  19. 论文解读:胶囊网络在小样本做文本分类中的应用(下)
  20. (转帖)DotNet中的构造函数大聚会

热门文章

  1. BootStrap初学者怎么使用?
  2. docker ps出错
  3. 主成分分析时,如果矩阵秩亏,会发生什么后果?
  4. 大文件传输利器HFS的配置及简单使用
  5. ffmpeg中AVPacket与AVFrame中数据的传递与释放
  6. pytorch torchvision.ops.roi_align 示例
  7. 向量的夹角余弦公式_两个向量的夹角的余弦值怎么求过程!! – 手机爱问
  8. mcnpf5输出结果_MCNP计数心得 -
  9. [RK3568 Android11] 教程之使用RKDevInfoWriteTool工具烧录SN和MAC地址等
  10. mysql upgrade 报错_mysql_upgrade