IronPython Tutorial.docx
- 文档编号:7580508
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:48
- 大小:40.35KB
IronPython Tutorial.docx
《IronPython Tutorial.docx》由会员分享,可在线阅读,更多相关《IronPython Tutorial.docx(48页珍藏版)》请在冰豆网上搜索。
IronPythonTutorial
IronPythonTutorial
AtourofPythonon.NET
Informationinthisdocumentissubjecttochangewithoutnotice.Theexamplecompanies,organizations,products,people,andeventsdepictedhereinarefictitious.Noassociationwithanyrealcompany,organization,product,personoreventisintendedorshouldbeinferred.Complyingwithallapplicablecopyrightlawsistheresponsibilityoftheuser.Withoutlimitingtherightsundercopyright,nopartofthisdocumentmaybereproduced,storedinorintroducedintoaretrievalsystem,ortransmittedinanyformorbyanymeans(electronic,mechanical,photocopying,recording,orotherwise),orforanypurpose,withouttheexpresswrittenpermissionofMicrosoftCorporation.
Microsoftmayhavepatents,patentapplications,trademarked,copyrights,orotherintellectualpropertyrightscoveringsubjectmatterinthisdocument.ExceptasexpresslyprovidedinanywrittenlicenseagreementfromMicrosoft,thefurnishingofthisdocumentdoesnotgiveyouanylicensetothesepatents,trademarks,copyrights,orotherintellectualproperty.
©MicrosoftCorporation.Allrightsreserved.
Microsoft,MS-DOS,MS,Windows,WindowsNT,MSDN,ActiveDirectory,BizTalk,SQLServer,SharePoint,Outlook,PowerPoint,FrontPage,VisualBasic,VisualC++,VisualJ++,VisualInterDev,VisualSourceSafe,VisualC#,VisualJ#, andVisualStudioareeitherregisteredtrademarksortrademarksofMicrosoftCorporationintheU.S.A.and/orothercountries.
Otherproductandcompanynameshereinmaybethetrademarksoftheirrespectiveowners.
Contents
Introduction
Tutorial1:
BasicIronPython
Exercise1:
TheIronPythoninteractiveconsole
Task1:
IronPythonconsole
Task2:
Built-inmodulesandinteractiveexploration
Task3:
ExternalPythonmodules
Exercise2:
Usingthestandard.NETlibrariesfromIronPython
Task1:
Basic.NETlibraryuse
Task2:
Workingwith.NETclasses
Task3:
Generics
Exercise3:
Loading.NETlibraries
Task1:
UsingSystem.Xml-AddReference
Task2:
Mapack-Loadingthe.NETlibraries-AddReferenceToFile
Exercise4:
ObtainingandUsingPythonStandardLibrary
Task1:
ConfiguringIronPythontousethePythonstandardlibrary
Tutorial2:
AdvancedIronPython
Exercise1:
EventsandDelegates
Task1:
FileSystemWatcher
Task2:
Improvingtheeventhandler
Task3:
DefiningeventsinPython
Exercise2:
WindowsForms
Task1:
SimpleWindowsFormsapplication
Exercise3:
WindowsPresentationFoundation(Avalon)
Task1:
SimpleAvalonApplication
Task2:
Avaloncalculator
Tutorial3:
IronPythonandCOMinteroperability
Exercise1:
MerlintheWizard
Task1:
CreatingCOMinteropassemblies
Task2:
UsingCOMobjectsfromIronPython
Exercise2:
UseWordforSpellChecking
Task1:
AccessingWordandCheckingSpelling
Task2:
UseWindowsFormDialogtoCorrectSpelling
Tutorial4:
DebuggingIronPythonprogram
Exercise1:
DebuggingIronPythonprograms
Task1:
DebuggingIronPythonprogramsusingMicrosoftCLRDebugger
Tutorial5:
ExtendingIronPython
Exercise1:
ExtendingusingC#
Task1:
Implementingsimpleclass-constructorandToString
Task2:
Makingtheobjectenumerable
Task3:
Addingcustomoperator
Task4:
Addingdelegate
Exercise2:
ExtendingusingVisualBasic.NET
Task1:
Implementingsimpleclass-constructorandToString
Task2:
Makingtheobjectenumerable
Task3:
Addingcustomoperator
Task4:
Addingdelegate
Tutorial6:
UsingVisualStudiotoEdit.pyFilesandDebugThem
Exercise1:
SettingupVisualStudioforIronPythonDebugging
Task1:
SettingupVisualStudioforIronPythonDebugging
Introduction
IronPythonisthe.NETimplementationofthePythonprogramminglanguage(www.python.org). It'sadynamicallytypedlanguagewithsupportformanyprogrammingparadigmssuchasobject-orientedprogramming,andalsoallowsyoutoseamlesslyuse.NETcode.
ThegoalofthistutorialistoquicklyfamiliarizeyouwiththeIronPythonconsole,andtoshowyouhowtomakeuseoftheextensive.NETlibrariesavailable. ThistutorialalsoshowsyouhowtogetstartedinmorespecializedareassuchasinteroperatingwithCOM,extendingIronPythonwithC#,andembeddingIronPython. ThistutorialisNOTmeanttobeanintroductiontoPythonitself,andifyou'relookingforthat,werecommendyoustartwiththetutorialatwww.python.orgortheoftenrecommendedbookLearningPythonbyMarkLutzandDavidAscher.
Someoftheexercisesinthistutorialrequireprerequisites. Theprerequisitestosuccessfullycompletethewholetutorialare:
oMicrosoft.NETFrameworkVersion2.0RedistributablePackage(x86)
oRequiredtorunIronPython.
oDownloadfromhere.
o.NETFramework2.0SoftwareDevelopmentKit(SDK)(x86)
oRequiredfortheCOMinteroperability,extendingandembeddingtutorials.
oDownloadfromhere.
oMicrosoftWinFXRuntimeComponents(Avalon)
oRequiredfor"AdvancedIronPython"and"EmbeddingIronPython"tutorials.
oDownloadfromhere.
oMapack(exampleassemblyfoundontheinternet)
oRequiredforthe"BasicIronPython"tutorial,exercise"Loading.NETLibraries".
oDownloadMapackfromhere(directlinktotheMapack.zipdownloadishere).
oExtractMapack.dllfromthezipfiledirectlyintotheTutorialdirectory.
VisualStudio2005canbeusedinplaceoftheMicrosoft.NETFrameworkVersion2.0andthe.NETFramework2.0SoftwareDevelopmentKit(SDK).SinceVisualStudio2005installsboththe.NETFramework2.0andthe.NETFrameworkSDK,thereisnoneedtoinstallthoseexplicitlyifyouhaveVisualStudio2005available.
ThistutorialassumesthattheIronPythondistributionwasuncompressedintothedirectoryC:
\IronPython. Pleasenotethatyourindividualsetupmayvary.
ThistutorialalsoassumesthatyouwilllaunchtheIronPythonconsole(c:
\ironpython\ipy.exe)fromthetutorialdirectory. WhenthetutorialsdirectyoutostarttheIronPythonconsolefromthetutorialdirectory,youshouldchangetothetutorialdirectory(>cdc:
\ironpython\tutorial)andlaunchtheconsolewiththetutorialasyourworkingdirectory(>..\ipy.exe).
Tutorial1:
BasicIronPython
TheemphasisofthistutorialisonthebasicinteractionwiththeIronPythoninterpreterandusingtheinteractiveenvironmenttoexplorethe.NETlibraries.
Estimatedtimetocompletethistutorial:
30minutes
TheobjectiveofthistutorialistolaunchtheIronPythoninterpreter,exploretheenvironmentoftheinteractiveconsoleanduseIronPythontointeractwith.NETlibraries.
Theexercisesinthistutorialare:
oTheIronPythoninteractiveconsole
oUsingthestandard.NETlibrariesfromIronPython
oLoadingadditional.NETlibraries
Exercise1:
TheIronPythoninteractiveconsole
Inthisexercise,youwillstarttheIronPythoninteractiveinterpreterandperformsimpletaskstobecomeacquaintedwiththeIronPythonenvironment.
IfyouarefamiliarwithusingthePythoninteractiveconsole,theimportstatementandexploringthePythoninteractiveenvironmentusingdir()functionand__doc__attribute,youcanskipthisexercise.
Task1:
IronPythonconsole
1.StarttheIronPythonconsolefromthetutorialdirectorybychangingtothetutorialdirectory(>cdc:
\ironpython\tutorial)andlaunchingtheconsolec:
\ironpython\ipy.exeexecutable(>..\ipy.exe). Thisishowyoushouldalwayslaunchtheconsoleforthetutorials,butfromnowon,we'lljustdirectyouto"starttheIronPythonconsolefromthetutorialdirectory".
IronPython1.0on.NET2.0.50727.42
Copyright(c)MicrosoftCorporation.Allrightsreserved.
>>>_
2.Executesimplestatementslistedbelow. AftereachstatementIronPythonprintstheresult,ifany,andawaitsmoreinput. (Theinputlinestartingwith"for"requiresanextrareturnorenterkeypressbecausetheinterpreterpromptsformorestatementsinthe'for'loop.)
2+2
print "Hello World!
"
for i in range(3):
print i
x = 10
print x
Afterthisstep,theconsolewindowwillcontainthefollowingtext:
>>>2+2
4
>>>print"HelloWorld!
"
HelloWorld!
>>>foriinrange(3):
printi
...
0
1
2
>>>x=10
>>>printx
10
>>>
3.IronPythonconsolesupportsmulti-linestatements,oftenusedbyfunctiondefinitions. IronPythonpromptsforadditionallinesofmulti-linestatementsusing:
...
UnlikeC#orJava,whereblocksofcodearegroupedbycurlybrackets"{...}",blocksofcodeinPythonaregroupedbasedontheirlevelofindentation. Everynewblockofcodemustbeindentedonemorelevelthanthepreviousblockofcode. Blocksofcodeareusedforfunctionandclassdefinitionsaswellas'if'statementsandloops.
Definethe"add"function(note,youneedtoenterspacesbeforethe'return'statement):
def add(a, b):
return a + b
Tocompletethefunctiondefinition,pressEnteroncemoreatthispoint
add(3, 2)
add("Iron", "Python")
Afterthisstep,theconsolecontentswillbe:
>>>defadd(a,b):
... returna+b
...
>>>add(3,2)
5
>>>add("Iron","Python")
'IronPython'
>>>
4.ToexittheIronPythoninteractiveconsole,typeCtrl+ZandEnter(alternatively,pressF6followedbyEnter).
^Z
Task2:
Built-inmodulesandinteractiveexploration
1.StarttheIronPythonconsolefromthetutorialdirectory(seeIntroductionfordetails).
2.Usingthebuilt-indir()function,listthecontentsoftheIronPythonenvironment:
dir()
Theoutputintheconsolewindowwillbe:
>>>dir()
['__builtins__','__doc__','__name__']
3.IronPythoncomeswithseveralbuilt-inmodules,themostfrequentlyusedonebeing"sys". Import"sys"moduleusingthe"import"statement:
importsys
4.ThePythonimportstatementissimilartothe"using"statementofC#or"Imports"statementofVisualBasic.TheimportantdifferenceisthattheC#andVBstate
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IronPython Tutorial