自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

幾分鐘教會(huì)您Python程序配置問題

開發(fā) 后端
Python程序是一個(gè)真正面向社區(qū)的成果,但 Barry Warsaw 和 Finn Bock 是當(dāng)前兩名最活躍的Python程序開發(fā)者。

Python是一種代表簡單主義思想的語言。閱讀一個(gè)良好的Python程序就感覺像是在讀英語一樣,盡管這個(gè)英語的要求非常嚴(yán)格,下面我就對(duì)Python 語言進(jìn)行說明,做一下自己的解析。

他從 Mark 那里了解到一些有關(guān)微軟開發(fā)的***獨(dú)家新聞內(nèi)幕(當(dāng)然所有內(nèi)容都在保密合同限制內(nèi))并從 Finn 和 Barry 那里了解到有關(guān) JPython 和他們將要發(fā)布的 Jython 項(xiàng)目的一些信息。

盡管 Python 通常等同于 CPython,但它的規(guī)范曾在其它地方實(shí)現(xiàn)過多次,包括在用于 Java 和 .NET 的應(yīng)用程序中。JPython 將 Python 源碼編譯成 Java 字節(jié)碼,并提供了對(duì) Java 類的透明訪問。Python for .NET 是微軟將要發(fā)布的交叉語言技術(shù)平臺(tái)工作中的一個(gè)應(yīng)用。在采訪 Mark Hammond、Finn Bock 和 Barry Warsaw 的過程中。

我發(fā)現(xiàn)了有關(guān) JPython 和 Python for .NET 是如何開發(fā)的更多信息,以及為未來這些替代 Python 實(shí)現(xiàn)進(jìn)行了哪些準(zhǔn)備。由于在 PythonWin 環(huán)境和 PythonCOM 擴(kuò)展方面出色的開發(fā),Mark Hammond 為廣大 Python 程序員所熟知。出于我們欽佩 Mark 的相同原因,微軟也很看重他。

他們決定在 Python for .NET 的實(shí)現(xiàn)上向他求助。據(jù) Mark 稱,Python for .NET 的工作版本應(yīng)該很快就可得到,現(xiàn)在您應(yīng)該已經(jīng)可以從 ActiveState 獲得它的 alpha 或 beta 版(請(qǐng)參閱 參考資料)。

David Mertz :到底什么是 Python for .NET 呢?我想我特別想知道的是 Python for .NET 與您自己對(duì) CPython 的 PythonWin 和 PythonCOM 擴(kuò)展(它們似乎能夠控制 Windows 的內(nèi)部)之間的關(guān)系是怎樣的。

Mark Hammond :Python for .NET 是一種編譯器和運(yùn)行時(shí),它在微軟的 .NET 平臺(tái)上實(shí)現(xiàn)了 Python。.NET 平臺(tái)提供了一個(gè)運(yùn)行時(shí)和元數(shù)據(jù)系統(tǒng),它們?cè)O(shè)計(jì)成允許完整的語言互操作性,但要實(shí)現(xiàn)這一點(diǎn),語言必須能在該運(yùn)行時(shí)中使用。

例如,如果 Python 類是公用的以便 Visual Basic 程序員能夠繼承它,Python 類就必須以 .NET 術(shù)語而不是以 CPython 術(shù)語來實(shí)現(xiàn)和描述。Python .NET 的優(yōu)點(diǎn)只是可以與 .NET 框架互操作。這里仍然有許多缺陷,主要由于實(shí)現(xiàn)還不成熟而導(dǎo)致。但這確實(shí)只是時(shí)間的問題。我們?nèi)蕴幱陂_發(fā)和調(diào)試的 beta 階段。

Mertz :您對(duì)現(xiàn)在的 Python for .NET 和 CPython 之間不兼容性問題是怎么看的?Hammond :是啊,大多數(shù)模塊還沒有被實(shí)現(xiàn),所以現(xiàn)有以 C 編寫的模塊還無法確切使用。如果您的目標(biāo)不是 .NET 框架,***此時(shí)不要使用 Python .NET。Mertz :不過,Python for .NET 肯定有一些主要的優(yōu)勢(shì),例如方便的語言間通信和多語言應(yīng)用開發(fā)。

但為什么您說比已經(jīng)有的那些 -- 例如 Python+C+SWIG 要好呢(當(dāng)然是假設(shè)情況)。Hammond :就 Python+C+SWIG 目前的發(fā)展而言,應(yīng)該是明顯的。語言間調(diào)用永遠(yuǎn)不應(yīng)該象使用 Python+C+SWIG 那樣困難。但 SWIG 在許多其它方面是個(gè)了不起的產(chǎn)品。它揭開了 Python C 擴(kuò)展編寫的神秘面紗,并僅將它歸到困難的行列。

將 .NET 與 COM 或 Corba 進(jìn)行比較更合理一些。COM 和 Corba 都提供交叉語言調(diào)用“正適用”的解決方案,而不需要任何手工參與或編譯。
.NET 將它更進(jìn)了一步,并提供交叉語言繼承和異常能力。這些優(yōu)點(diǎn)非常類似于在 Java 虛擬機(jī)下的多語言實(shí)現(xiàn)中發(fā)現(xiàn)的那些。

Mertz :Python for .NET 將 Python 腳本編譯成外部虛擬機(jī)的格式。對(duì)于 .NET VM 是否將支持 Stackless 和 Vyper 的某些外來特性,例如延續(xù)性、生成器、協(xié)同程序、尾遞歸或延緩求值,您認(rèn)為會(huì)這樣嗎?

Hammond :是的,從理論上說它會(huì)。但微軟 Beta 協(xié)議的一些條款不允許我談?wù)撚嘘P(guān)性能的問題。 讓我們將目標(biāo)只定在核心 Python 語言引用中定義的那些特性上。無用信息收集是繼承的,就象在 JPython 和 JVM 中的那樣。

Mertz :接下來談?wù)務(wù)咧黝},您認(rèn)為微軟為什么正在進(jìn)行 Python for .NET 的開發(fā)工作呢?Hammond :這樣選擇目標(biāo) .NET 的人就可使用 Python 了,無用信息收集是繼承的,就象在 JPython 和 JVM 中的那樣。

微軟很早就確定要參與到 Python 和其它許多語言中,以確保他們的 VM 確實(shí)是不懂語言也能夠使用的。根據(jù)來自各種語言實(shí)現(xiàn)者的反饋意見,現(xiàn)在他們已經(jīng)對(duì)他們的 VM 做了大量更改。

Warsaw :我們已經(jīng)基于公用 JPython 1.1 發(fā)行版創(chuàng)建了 JPython 后繼者 "Jython"。這樣做是為了確保項(xiàng)目的長久性和穩(wěn)定性。依據(jù) CNRI 的 JPython 1.1.x 許可證實(shí)現(xiàn)了所有這些。我們將整個(gè)開發(fā)過程移到了 SourceForge。

并使用對(duì) CPython 非常合適的相同開放過程管理它。Finn 和我兩人無疑要參與 Jython 未來的開發(fā);Jython 將使用 OSI 核準(zhǔn)的 CPython 2.0 許可證發(fā)行。它與您將獲得的“正式”派生很接近,所以當(dāng)前的 JPython 社區(qū)應(yīng)該確信 Jython 與它永遠(yuǎn)不會(huì)相差太多。我們希望它們最終都能遷移到 Jython。

現(xiàn)在代碼仍處在試驗(yàn)階段,但 Finn 和我將為 Jython 2.0 發(fā)行版(已經(jīng)包含了 Finn 的勘誤表)致力于建立幾個(gè)技術(shù)性里程碑。CPython 2.0 具有增強(qiáng)的指派和擴(kuò)展打印等特性(很快還將帶有列表理解)。

我們已集成了免費(fèi)的 Apache Jakarta OROMatcher 代碼,消除了雙許可證的需要,并修正了許多錯(cuò)誤。我不知道 Jython 2.0 的***個(gè) alpha 發(fā)行版何時(shí)出現(xiàn),但當(dāng)前所有代碼都在 SourceForge CVS 樹中獲得。

【編輯推薦】

  1. 漫談Python 源代碼編制技巧
  2. 簡單易于操作的Python 工具詳解
  3. 有關(guān)Python應(yīng)用領(lǐng)域進(jìn)行說明介紹
  4. PythonAndroid面向?qū)ο蟮木幊獭狿ython應(yīng)用程序
  5. 如何使用Python模塊解析配置文件 ?
責(zé)任編輯:chenqingxiang 來源: IT專家網(wǎng)
相關(guān)推薦

2010-02-23 14:19:30

Python目錄操作

2009-12-21 13:51:54

ADO.NET處理

2010-03-04 10:01:01

Android基本組件

2010-01-12 18:20:31

Visual C++

2010-01-21 09:46:24

C++程序

2010-03-10 13:55:35

交換機(jī)故障

2010-01-12 10:28:58

C++復(fù)雜性

2016-09-30 15:13:01

Python代碼

2009-12-30 09:58:28

mpls標(biāo)簽

2009-12-29 09:01:46

ADSL斷線

2009-12-17 15:15:07

VS2008快捷鍵

2010-01-21 14:51:02

C++函數(shù)指針

2010-01-06 13:39:51

擴(kuò)展Jquery的Js

2009-11-26 09:28:56

VS2003打包

2013-07-02 09:58:38

ClojureClojure教程

2009-12-01 20:29:42

Visual Stud

2021-12-02 11:54:10

云計(jì)算云錯(cuò)誤配置網(wǎng)絡(luò)安全

2009-11-30 13:27:12

Visual Stud

2010-01-06 15:35:06

JSON對(duì)象

2024-12-03 15:38:14

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)