因为理解概念的角度差别

一般来说,脚本语言是从使用形式上定义,而非实际实现,简单说就是对于某个源码文件a,你能通过xxx a直接运行,就算是了,所以严格来说,你如果写个批处理,先调用gcc,再执行编译出的结果,从使用角度也可以看做是把c语言源文件当脚本来执行

当然,语言领域的很多概念在发展的时候已经比较混乱了,你认为从其他角度理解脚本的概念也行,即你认为python不是脚本语言也是可以的,因为概念定义就不同

顺便说下,像你说的“直接解析源码执行”的脚本语言,如果语言本身没有足够简单,那几乎是不存在的,最简单的例子,你在脚本里面写个函数或循环,难道要每次执行函数体或循环体的时候都一行行重新做一遍词法和语法分析?实际是没有必要的,不过也有中间态的实现,比如shell脚本,举个例子:

echo hello

for((i=1;i<=10;i++)); do

echo hello

for((i=1;i<=10;i++));

echo hello

done

done

内层for循环故意漏了个do,造成语法错误,执行这个脚本只会打印出一个hello,然后报语法错误,因为对于解释器来说,这里只有两条“指令”,一个echo,一个for,至于第二个for内部的东西是当做一个整体先做编译(或者你可以认为这是一个很弱的编译,但至少实现了表达式解析),在编译时候会检查语法错误,而不是逐句“执行”

python是脚本语言_python需要编译,为什么还把他叫做脚本语言?相关推荐

  1. 一个c语言程序只要编译和链接没有错误,一个 C 语言程序只要编译和链接没有错误,程序运行结果就肯定正确...

    一个 C 语言程序只要编译和链接没有错误,程序运行结果就肯定正确 更多相关问题 网页表单中不能插入表格.() 要想在一个网页中嵌套另外一个网页,一般可以使用页内框架.() 贸易也是一种特殊的技术.() ...

  2. c语言源程序不编译也能直接运行吗,c语言的源程序不必通过编译就可以执行对吗...

    错误,C语言采用编译方式将源程序转换为二进制的目标代码,编写好一个C程序到完成运行一般经过以下几个步骤,编辑和编译,就是将已经编辑好的源程序翻译成二进制的目标代码,经编译后的得到的二进制代码还不能直接 ...

  3. 易语言发信服务器没有反应,还不会使用易语言连接发信服务器发送邮件的朋友看过来...

    还不会使用易语言连接发信服务器发送邮件的朋友看过来 许多易语言新手不会使用易语言连接发信服务器发送邮件,主要问题就是对易语言不熟悉导致的,本教程将教大家易语言利用163邮箱连接发信服务器与发送邮件命令 ...

  4. python语言属于哪一种语言_Python与Java:你应该学习哪种语言,他们有什么区别?...

    在企业招聘中, Python和Java经常是需求最大的编程语言.这两种编程功能强大,灵活且面向对象的语言,通常在组织中和各种其他设置中使用. 这可能会导致我们提出一个不可避免的问题:哪个更好? 这是一 ...

  5. python定时关机程序_Python练习小程序之定时关机小脚本(代码教程)

    就不多介绍了,直接上代码吧. #coding:utf-8 import datetime, time, os, wx import tkinter, threading from tkinter im ...

  6. python爬取王者_python爬取王者荣耀APP英雄皮肤-Go语言中文社区

    我们用fillder抓包下载,>>fillder软件下载 1.下载安装软件,设置Tools >> HTTPS里面全部勾选 2.options >> connecti ...

  7. C语言二级必须编译吗,2019年计算机二级C语言考点条件编译

    [摘要]2019年9月份的计算机二级考试已经顺利结束,没有参加这次考试的小伙伴们接下来就要积极准备下一次的考试了.为此,环球网校小编为大家整理了计算机二级C语言考点相关信息,希望能够帮助到大家,了解更 ...

  8. C语言多文件编译的精神内核-讲透多文件编译攻略

    本文讲述C语言多文件编译的精神内核,语法规则,应用场景等知识,旨在帮助初学者了解软件工程基本原理,多文件编译的优势和必然,从而更好的开发出可维护性更高,复杂度更高的有效程序. 一.为什么要多文件? 想 ...

  9. c语言实现爬虫功能,用C/C 扩展Python语言_python 调用c语言 python实现简单爬虫功能_python实现简单爬虫...

    用C/C 扩展Python语言 Python是一门功能强大的脚本语言,它的强大不仅表现在功能上,还表现在其扩展性上.她提供大量的API以方便程序员利用C/C++对Python进行扩展.因为执行速度慢几 ...

  10. python属于哪种类型的语言_Python是什么类型的编程语言,有什么特性

    由于近几年人工智能的不断发展,Python也跟着火了,因为Python是深度学习技术的主流应用编程语言.同时它的应用场景很多,被称为"胶水语言".下面给大家科普一下Python这门 ...

最新文章

  1. 构建之法阅读心得(二)
  2. springboot 页面下载文件 网页下载文件功能 文件放resourcce下面
  3. http请求 url 竖线_http.createServer创建http服务
  4. 22.C++- 继承与组合,protected访问级别
  5. Android 安装详解---Mr.Zhang
  6. 2019新悦动打火困难解决了吗_悦动大面积存在启动困难北京现代检查不出原因就换零件...
  7. Shell 概述、截取字符操作等
  8. android 机子 启动不进入 android
  9. 广义表的存储结构算法c语言,广义表(一)
  10. A Re-evaluation of Temporal Knowledge Graph Completion Models under a Unified Framework
  11. matlab如何找出相似的图,图像相似性搜索的MATLAB实现
  12. 【翻译】StarGAN: Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation
  13. 超简单微信登录(微信SDK接入、友盟SDK接入)
  14. 禁止spotlight索引外置硬盘或者网络硬盘
  15. 银行软件测试论文参考文献,软件测试毕业论文参考文献.doc
  16. 微微一笑很倾城(3)
  17. jpg格式电脑怎么弄_(常见问题)如何把HEIC格式图片转换成JPG格式?
  18. js正则表达式 URL格式匹配详解
  19. 2022-2028年中国财税信息化行业市场行情动态及发展趋向分析报告
  20. 【000】欢迎来到嵌入式开发教程

热门文章

  1. AMP+EPP3.0的开发环境配置
  2. Java Integer 对象的比较
  3. 设计模式学习(三):创建型模式【转】
  4. docker入门、docker基本命令
  5. docker 学习之使用dockerfile 创建镜像遇到的坑
  6. nmea怎么转wgs84坐标c语言源码,NMEA-0813数据格式说明
  7. Spring Cloud Alibaba Sentinel之服务熔断篇
  8. 聊聊索引失效的10种场景,巨坑
  9. 并发编程之ReadWriteLock接口
  10. 关于结构体嵌套的字节大小的问题