當前位置:首頁 » 編程軟體 » 腳本語言編程

腳本語言編程

發布時間: 2023-12-24 13:54:01

python是一門「腳本語言」嗎

Python是一門通用型的編程語言,而它時常扮演著腳本語言的角色。一般來說,Python可定義為一門面向對象的腳本語言:這個定義把對面向對象的支持和徹底的面向腳本語言的角色融合在一起。如果只用一句話來概括,Python是一門融合了面向過程、函數式和面向對象編程範式的多目標語言。無論怎樣,術語「腳本」一詞已經同膠水一樣黏在了Python 上,這不同於其他需要編寫大量繁復代碼的語言。例如,人們往往用「腳本」(script)而不是「程序」(program)一詞來描述Python的代碼文件。由於「腳本語言」的意思可謂眾說紛紜,因而,一些人也認為該詞在Python中的使用應該被完全禁止。實際上,人們往往給Python三個不同的角色,其中有些角色相對其餘的角色更重要:
Shell工具
偶爾當人們聽到Python是腳本語言時,他們會認為Python是一個面向系統的腳本語言代碼工具。這些程序往往在命令行運行中,實現諸如文本文件的處理以及啟動其他程序等任務。
Python程序當然能夠以這樣的角色工作,但這僅僅是Python常規應用范圍的很小一部分。它不只是一種很好的Shell 腳本語言。
控制語言
對其他人而言,腳本意味著控制或重定向其他應用程序組件的「膠水」層。Python經常部署於大型應用之中。例如,測試硬體設備時,Python程序可以調用能夠進行硬體底層訪問的相關組件。類似地,在終端用戶產品定製的過程中,應用程序可以在策略點處調用一些Python 代碼,而無需分發或重新編譯整個系統代碼。
Python的簡潔性使其從本質上能夠成為一個靈活的控制工具。然而從技術上來講,這也只是Python的常規角色之一,許多(或許也是絕大多數)Python代碼作為獨立的腳本執行時無須調用或者了解其他的集成組件。然而,Python不只是一種控制語言。使用便捷可能對「腳本語言」最好的解釋,就是一類應用於快速編程任務的一種簡單語言。對於Python來說,這確實是實至名歸,因為Python和C++之類的編譯語言相比,大大提高了程序開發速度。其敏捷的開發周期促進了探索、增量式的軟體開發模型,而這些都是必須親身體驗之後才能體會得到。
但是千萬別被迷惑,誤以為Python僅可以實現簡單的任務。恰恰相反,Python的易用性和靈活性使編程任務變得簡單。Python有著一些簡潔的特性,但是它允許程序按照需求以盡可能優雅的方式擴展。也正是基於這一點,它通常應用於快速作業任務和長期戰略開發。
所以,Python是不是腳本語言,這取決於你看待這個問題的視角。一般意義上講,「腳本語言」一詞可能最適用於描述一種 Python所支持的快速和靈活的開發模式,而不是特定的應用領域的概念。

⑵ 腳本有哪幾類和編程語言什麼區別不同類的腳本怎麼區別

這個應該怎麼回答你呢,編程語言確實被分為腳本語言,標記語言,編譯語言,解釋語言,低級語言,高級語言等等。這些分類對於新手來說,往往會把它們搞亂。就好像一個未上過學的農民伯伯問你,什麼是網際網路,什麼是互聯網,什麼是萬維網,什麼是區域網,什麼是城域網一樣,你很難一下子說明清,讓他明白。
這種情況的原因,就在於,這些分類之間並不是嚴格互斥的,相互之間存在重疊和包容。就你的問題而言,腳本語言根本就沒有分類,你的意思可能是想問:腳本語言有哪些。說實話,太多了,其它那些很生僻的就不說了,就一個程序員時常要用到的就不少。平時用得較多的,大致有這些:Ruby,Python,Shell,Javascript,Perl,Awk,Sed,Expect,ActionScript,Lua,php等。硬要給這些腳本語言分類的話,只能按它們的用途來分,比如:系統腳本(如Shell,windows批處理),應用腳本,和一般性腳本。
腳本語言中腳本一詞,有配置,動態微調的意味。它最初的目的是為一些大型或超大型程序提供可實時編輯、可動態調整的特性。所以腳本語言的正統用途是把它們的解釋器嵌入到由編譯性語言如C,C++等寫的大型程序中(如瀏覽器,操作系統,大型游戲等),以解釋隨時可變的用戶腳本,提供更改這些大型程序特性,以達到用戶期望程序行為的目的。
一句話,腳本語言的正統使命,是一個中介者,提供用戶與其它大型程序之間的溝通橋梁。舉例來說,瀏覽器是一個完整的大型程序,它內嵌JavaScript解釋器,在運行期間動態解釋用戶的JavaScript腳本程序,以改變WEB頁面的行為,獲得各種頁面效果。同樣,操作系統(以linux為例),就自帶了shell解釋器,用戶通過發shell命令或使用shell腳本程序來獲得主機系統的各種信息(如cpu,內存,磁碟,進程等)。再如一些大型游戲(比如魔獸世界)也內嵌一些腳本語言的解釋器(通常是lua),實現一些與游戲的交互。大家熟悉的3DMax,Photoshop和autoCAD軟體都內嵌有一些腳本語言的解釋器,目的都一樣。
編譯性語言與腳本語言的主要區別在於,腳本是由解釋器逐行解釋執行的,而編譯性語言,則需要將源程序經編譯器編譯在可執行的計算機二進制代碼。然後再執行。其它效率相當高,速度也特別快。但缺點是需要先編譯,然後再執行。腳本語言的優勢在於它的動態性,可以即改即用。
但是有些腳本語言的功能很強大,遠超出了腳本最初的使命。首先,這些腳本語言的解釋器經過優化,速度也非常快;其次,這些語言本身的許多特性也很強大,完全可以開發一些獨立的大型程序。比如ruby,python,perl,php等。
最後,再回應你的最後一個問題:不同的語言對應不同的腳本這個問題,我不太明白你的本意。不同腳本語言,它們的語法肯定是不同的,不可能在語法上完全兼容,那樣的話,你的直觀感受就是,它們是同一個語言。

⑶ 腳本語言有哪些

  • 腳本語言:腳本語言又被稱為擴建的語言,或者動態語言,是一種編程語言,用來控制軟體應用程序,腳本通常以文本(如ASCII)保存,只在被調用時進行解釋或編譯。

  • 語言分類:

  1. Shell腳本:此類腳本用於自動化工作控制,即啟動和控制系統程序的行為。大多的腳本語言解釋器也同時是命令行界面,如Unix shell和MS-DOS COMMAND.COM。其他如AppleScript,可以為系統增加腳本環境,但沒有命令行界面。具體分類有:

    4NT

    AppleScript

    ARexx (Amiga Rexx)

    bash

    csh

    DCL

    JCL

    ksh

    Cmd.exe batch (Windows, OS/2)

    Command.com batch (DOS)

    REXX

    tcsh

    sh

    Winbatch

    Windows PowerShell

    Windows Script Host

    zsh

  2. GUI腳本:GUI出現帶來一種專業的控制計算機的腳本語言。它在用戶和圖形界面,菜單,按鈕等之間互動。它經常用來自動化重復性動作,或設置一個標准狀態。理論上它可以用來控制運行於基於GUI的計算機上的所有應用程序,但實際上這些語言是否被支持還要看應用程序和操作系統本身。當通過鍵盤進行互動時,這些語言也被稱為宏語言。

    具體分類有:

    AutoHotkey

    AutoIt

    Expect

  3. 應用程序定製:許多大型的應用程序都包括根據用戶需求而定製的慣用腳本語言。同樣地,許多電腦游戲系統使用一種自定義腳本語言來表現NPC(non-player character,non-playable character,non-player class)和游戲環境的預編程動作。此類語言通常是為一個單獨的應用程序所設計,雖然它們貌似一些通用語言(如QuakeC, modeled after C),但它們有自定義的功能。具體分類:

    Action Code Script

    ActionScript

    AutoLISP

    BlobbieScript

    Emacs Lisp

    Game Maker Language

    HyperTalk

    IPTSCRAE

    IRC script

    Lingo

    Maya Embedded Language

    mIRC script

    NWscript

    QuakeC

    UnrealScript

    Visual Basic for Applications

    VBScript

    ZZT-oop

  4. web編程腳本:應用程序定製的腳本語言中有一種重要的類別,用於提供WEB頁面的自定義功能。它專業處理互聯網通信,使用網頁瀏覽器作為用戶界面。當然,大多現代WEB編程語言都比較強大可以做一些通用編程。具體分類:

    ColdFusion (Application Server)

    Lasso

    Miva

    SMX

    IPTSCRAE-一些網路開發團隊用於創建論壇的工具

  5. 文本處理語言:處理基於文本的記錄是腳本語言最早的用處之一。如Unix's awk最早是設計來幫助系統管理員處理調用UNIX基於文本的配置和LOG文件。PERL最早是用來產生報告的,現在它已經成了全面成熟的語言。

    具體分類:

    Awk

    Perl

    sed

    XSLT

  6. 通用動態語言:一些語言,比如Perl,從一門腳本語言發展成了更通用的編程語言。由於「解釋執行,內存管理,動態」等特性,它們仍被稱為腳本語言。但它們已經用於應用程序編寫,用戶也不把它們看作腳本語言。

    APL

    Dao

    Dylan

    Groovy

    Lua

    MUMPS (M)

    newLISP

    Nuva

    Perl

    PHP

    Python

    Ruby

    Scheme

    Smalltalk

    SuperCard

    Tcl (Tool command language)

  7. 程序語言:少數的語言被設計通過嵌入應用程序來取代應用程序定製的腳本語言。開發者(如使用C等其它系統語言)包入使腳本語言可以控制應用程序的hook。這些語言和應用程序定製的腳本語言是同種用途,但優點在於可以在應用程序之間傳遞一些技能。

    具體分類:

    Ch (C/C++ interpreter)

    Dao

    ECMAScript 亦稱 DMDScript, JavaScript, JScript

    GameMonkeyScript

    Guile

    ICI

    Lua

    RBScript (REALbasic Script)

    Squirrel

    Tcl

    Z-Script

  8. JavaScript直到現在仍然是網頁瀏覽器內的主要編程語言,它的ECMAScript標准化保證了它成為流行的通用嵌入性語言。Tcl作為一種擴展性語言而創建,但更多地被用作通用性語言,就如同Python, Perl, Ruby一樣。Q語言是在VBScript的基礎上發展起來,專用於按鍵精靈系列產品,成為一門更接近「漢語」習慣的腳本語言。

    BeanShell (scripting for Java)

    CobolScript

    Escapade (server side scripting)

    Euphoria

    F-Script

    Ferite

    Groovy

    Gui4Cli

    Io

    KiXtart

    Mondrian

    Object REXX

    Pike

    Pliant

    REBOL

    ScriptBasic

    Shorthand Language

    Simkin

    Sleep

    StepTalk

    Visual DialogScript

熱點內容
劍靈連接伺服器怎麼樣 發布:2024-11-17 04:54:42 瀏覽:862
javablock 發布:2024-11-17 04:45:01 瀏覽:92
從安卓到蘋果怎麼轉移通訊錄 發布:2024-11-17 04:44:56 瀏覽:924
shell監控進程腳本 發布:2024-11-17 04:37:46 瀏覽:897
raid0能提升編譯速度嗎 發布:2024-11-17 04:30:52 瀏覽:642
安卓微博緩存 發布:2024-11-17 04:30:15 瀏覽:6
蘋果手機有加密軟體 發布:2024-11-17 04:29:23 瀏覽:648
php函數和方法 發布:2024-11-17 04:27:16 瀏覽:129
我的世界怎麼設置伺服器陣容 發布:2024-11-17 04:26:32 瀏覽:281
數控編程簡單點的圖片 發布:2024-11-17 04:16:57 瀏覽:445