2011-06-10 29 views
0

我一直在研究Python工作一週,看起來很有趣,我開始使用它來創建Splunk的額外搜索功能。Python語言的使用

我的問題是,你還可以用它做什麼?它只是一種腳本語言嗎?如果是的話,我可以創建和使用哪種類型的腳本?

爲了開始編寫可用腳本,我應該在多大程度上學習Python?

我可以寫一個Shell Korn腳本來查詢MySql數據庫,我可以用Python做同樣的事嗎?

+0

爲什麼每個人都會在我的問題上投票呢?作爲Python新手,我有權提出這個問題! – 2011-06-10 06:40:23

+0

確實如此。 +1 – motoku 2011-06-10 06:49:20

+0

回答「我如何用Python查詢MySQL」這樣的特定問題更爲容易。而不是「我可以用Python做什麼?」。 – Harriv 2011-06-10 07:03:06

回答

6

你幾乎可以做的Python什麼,你可以用ksh能做的,只有更加容易(炮彈有很多內置的東西,但像grep許多腳本將「伸手」要幫手,sedawk,等等,做咕嚕工作)。

Python還帶有一個insanely large library(就像Java和C#)和plenty of add-on modules,兩者都包含數據庫內容。

你不要要學習Python能夠腳本成功,有一個大量的解決方案。但是Python 是你的武器庫中有用的武器。

底部,它完全能夠處理大量的任務,包括您提到的特定任務。

+0

感謝您的酷解答,但是您正在談論的腳本是什麼類型的解決方案? – 2011-06-10 06:42:46

+0

Python,Perl,ksh,bash,csh以及其他各種各樣的任何其他類型。有些人有利基(紅寶石,PHP等),但我敢肯定,即使是那些可以彎曲的通用shell的任務。 – paxdiablo 2011-06-10 06:46:58

4

回答您的問題依次是:

  1. 一切。
  2. 編號
  3. 任何。
  4. 儘可能多。
  5. 是的。
+0

答案編號5:你能舉個例子嗎? – 2011-06-10 06:52:21

+0

http://sourceforge.net/projects/mysql-python/ – 2011-06-10 06:56:43

5

阿羅哈!

令人討厭的答案是Python和其他語言一樣都是完整的,你可以在其中編寫程序。但是這可能不能回答你的問題。 ;-)

首先,提示:停止思考腳本與真正的編程語言。 Python,就像Java,Perl,Ruby,LISP,Scala,Lua和Cloujure一樣,也是C,C++,Fortran等真正的編程語言。它們的主要區別在於它們運行的​​是什麼。例如C可以運行在「裸機」上,基本上可以轉換爲可以由本地/實時CPU執行的指令序列。 Python,Java等依靠虛擬機執行他們的指令。虛擬機由真正的CPU運行。

虛擬機需要一些性能,但添加諸如可移植性,動態行爲(內省,鴨子打字等),使得用它編寫的語言和系統非常有效,但難度很大(但並非不可能 - 記住圖靈完整性),例如C.

隨着在分鐘(Python是一個真正的編程語言),你可能不會感到驚訝地得知,Python可以是與被用於諸如:

  • 網絡服務器和網絡應用。看看偉大的Twisted網絡框架,看看Trac等美麗的應用程序。

  • 大型專業分佈式版本控制。 Mercurial(Hg)完全是用Python編寫的,能夠在全球範圍內與開發人員一起處理巨大的活躍項目。

  • 編譯器,語言和虛擬機。實際上有一臺虛擬機能夠運行Python(!)編寫的Python。稱爲Pypy的機器使用該語言的一些動態功能來提高性能。

Pypy確實是一個時髦的概念 - 有你運行你的代碼,可以在運行時修改語言的機器 - 基本上重建從你的應用程序中的「硬件」,提升機在心血來潮應用程序。 (是的,我知道所有LISP的人都在這一點上打哈欠 - 沒有新東西,但仍然非常非常時髦)

你有它,一些恕我直言善良,一切,但簡單化,非專業的應用程序。現在開始在Python.org上閱讀關於該語言的高級功能和標準庫中隨時可用的驚人功能。你的編程生涯會感謝你。

祝你好運!

+1

+1「groovy」:) – motoku 2011-06-10 08:26:18