0% found this document useful (0 votes)
1K views

Python (Programming Language)

Python is a widely used programming language that emphasizes code readability. It supports multiple programming paradigms and has a large standard library. Python interpreters are available for many operating systems and it can be used to create standalone executable programs. The core of Python is free and open-source software.

Uploaded by

Michel
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views

Python (Programming Language)

Python is a widely used programming language that emphasizes code readability. It supports multiple programming paradigms and has a large standard library. Python interpreters are available for many operating systems and it can be used to create standalone executable programs. The core of Python is free and open-source software.

Uploaded by

Michel
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

Python(programminglanguage)
FromWikipedia,thefreeencyclopedia

Pythonisawidelyusedgeneralpurpose,highlevelprogramminglanguage.[20][21]Itsdesign
philosophyemphasizescodereadability,anditssyntaxallowsprogrammerstoexpressconceptsin
fewerlinesofcodethanwouldbepossibleinlanguagessuchasC++orJava.[22][23]Thelanguage
providesconstructsintendedtoenableclearprogramsonbothasmallandlargescale.[24]
Pythonsupportsmultipleprogrammingparadigms,includingobjectoriented,imperativeand
functionalprogrammingorproceduralstyles.Itfeaturesadynamictypesystemandautomatic
memorymanagementandhasalargeandcomprehensivestandardlibrary.[25]
Pythoninterpretersareavailableforinstallationonmanyoperatingsystems,allowingPythoncode
executiononawidevarietyofsystems.Usingthirdpartytools,suchasPy2exeorPyinstaller,[26]
Pythoncodecanbepackagedintostandaloneexecutableprogramsforsomeofthemostpopular
operatingsystems,allowingthedistributionofPythonbasedsoftwareforuseonthoseenvironments
withoutrequiringtheinstallationofaPythoninterpreter.

Python

Paradigm

multiparadigm:objectoriented,
imperative,functional,procedural,
reflective

Designedby

GuidovanRossum

Developer

PythonSoftwareFoundation

Firstappeared 1991
Stablerelease 3.5.1/
7December2015[1]
2.7.11/

CPython,thereferenceimplementationofPython,isfreeandopensourcesoftwareandhasa
communitybaseddevelopmentmodel,asdonearlyallofitsalternativeimplementations.CPythonis
managedbythenonprofitPythonSoftwareFoundation.

Contents
1 History
2 Featuresandphilosophy
3 Syntaxandsemantics
3.1 Indentation

https://en.wikipedia.org/wiki/Python_(programming_language)

5December2015[2]
Typing
discipline

duck,dynamic,strong,gradual(as

OS

Crossplatform

License

PythonSoftwareFoundation
License

Filename
extensions

.py,.pyc,.pyd,.pyo, [4]pyw,

Website

www.python.org

ofPython3.5)[3]

.pyz[5]

1/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

3.1 Indentation
3.2 Statementsandcontrolflow
3.3 Expressions

(https://www.python.org/)
Majorimplementations
CPython,IronPython,Jython,PyPy
Dialects

3.4 Methods
3.5 Typing
3.6 Mathematics
4 Libraries
5 Developmentenvironments
6 Implementations
7 Development
8 Naming

Cython,RPython,StacklessPython
Influencedby
ABC, [6]ALGOL68, [7]C, [8]C++, [9]Dylan, [10]
Haskell, [11]Icon, [12]Java, [13]Lisp, [14]
Modula3, [9]Perl
Influenced
Boo,Cobra,D,F#,Falcon,Go,Groovy,
JavaScript, [15][16]Julia, [17]Nim,Ruby, [18]
Swift[19]
PythonProgrammingatWikibooks

9 Use
10 LanguagesinfluencedbyPython
11 Seealso
12 References
13 Furtherreading
14 Externallinks

History
https://en.wikipedia.org/wiki/Python_(programming_language)

2/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

Pythonwasconceivedinthelate1980s,[27]anditsimplementationwasstartedinDecember1989[28]byGuido
vanRossumatCWIintheNetherlandsasasuccessortotheABClanguage(itselfinspiredbySETL)[29]capable
ofexceptionhandlingandinterfacingwiththeAmoebaoperatingsystem.[6]VanRossumisPython'sprincipal
author,andhiscontinuingcentralroleindecidingthedirectionofPythonisreflectedinthetitlegiventohimby
thePythoncommunity,benevolentdictatorforlife(BDFL).
AbouttheoriginofPython,VanRossumwrotein1996:[30]
Oversixyearsago,inDecember1989,Iwaslookingfora"hobby"programmingprojectthatwould
keepmeoccupiedduringtheweekaroundChristmas.Myoffice...wouldbeclosed,butIhada
homecomputer,andnotmuchelseonmyhands.Idecidedtowriteaninterpreterforthenew
scriptinglanguageIhadbeenthinkingaboutlately:adescendantofABCthatwouldappealto
Unix/Chackers.IchosePythonasaworkingtitlefortheproject,beinginaslightlyirreverentmood
(andabigfanofMontyPython'sFlyingCircus).
Python2.0wasreleasedon16October2000andhadmanymajornewfeatures,includingacycledetecting
garbagecollectorandsupportforUnicode.Withthisreleasethedevelopmentprocesswaschangedandbecame
moretransparentandcommunitybacked.[31]

GuidovanRossum,thecreatorof
Python

Python3.0(alsocalledPython3000orpy3k),amajor,backwardsincompatiblerelease,wasreleasedon3
December2008[32]afteralongperiodoftesting.ManyofitsmajorfeatureshavebeenbackportedtothebackwardscompatiblePython2.6and2.7.[33]

Featuresandphilosophy
Pythonisamultiparadigmprogramminglanguage:objectorientedprogrammingandstructuredprogrammingarefullysupported,andtherearea
numberoflanguagefeatureswhichsupportfunctionalprogrammingandaspectorientedprogramming(includingbymetaprogramming[34]andbymagic
methods).[35]Manyotherparadigmsaresupportedusingextensions,includingdesignbycontract[36][37]andlogicprogramming.[38]
Pythonusesdynamictypingandacombinationofreferencecountingandacycledetectinggarbagecollectorformemorymanagement.Animportant
featureofPythonisdynamicnameresolution(latebinding),whichbindsmethodandvariablenamesduringprogramexecution.

https://en.wikipedia.org/wiki/Python_(programming_language)

3/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

ThedesignofPythonofferssomesupportforfunctionalprogrammingintheLisptradition.Thelanguagehasmap(),reduce()andfilter()functions
comprehensionsforlists,dictionaries,andsetsandgeneratorexpressions.[39]Thestandardlibraryhastwomodules(itertoolsandfunctools)that
implementfunctionaltoolsborrowedfromHaskellandStandardML.[40]
Thecorephilosophyofthelanguageissummarizedbythedocument"PEP20(TheZenofPython)",whichincludesaphorismssuchas:[41]
Beautifulisbetterthanugly
Explicitisbetterthanimplicit
Simpleisbetterthancomplex
Complexisbetterthancomplicated
Readabilitycounts
Ratherthanrequiringalldesiredfunctionalitytobebuiltintothelanguage'score,Pythonwasdesignedtobehighlyextensible.Pythoncanalsobe
embeddedinexistingapplicationsthatneedaprogrammableinterface.Thisdesignofasmallcorelanguagewithalargestandardlibraryandaneasily
extensibleinterpreterwasintendedbyVanRossumfromtheverystartbecauseofhisfrustrationswithABC(whichespousedtheoppositemindset).[27]
Whileofferingchoiceincodingmethodology,thePythonphilosophyrejectsexuberantsyntax,suchasinPerl,infavorofasparser,lesscluttered
grammar.AsAlexMartelliputit:"TodescribesomethingascleverisnotconsideredacomplimentinthePythonculture."[42]Python'sphilosophy
rejectsthePerl"thereismorethanonewaytodoit"approachtolanguagedesigninfavorof"thereshouldbeoneandpreferablyonlyoneobvious
waytodoit".[41]
Python'sdevelopersstrivetoavoidprematureoptimization,andmoreover,rejectpatchestononcriticalpartsofCPythonthatwouldofferamarginal
increaseinspeedatthecostofclarity.[43]Whenspeedisimportant,aPythonprogrammercanmovetimecriticalfunctionstoextensionmoduleswritten
inlanguagessuchasC,ortryusingPyPy,ajustintimecompiler.Cythonisalsoavailable,whichtranslatesaPythonscriptintoCandmakesdirectC
levelAPIcallsintothePythoninterpreter.
AnimportantgoalofthePythondevelopersismakingPythonfuntouse.Thisisreflectedintheoriginofthename,whichcomesfromMonty
Python,[44]andinanoccasionallyplayfulapproachtotutorialsandreferencematerials,suchasusingexamplesthatrefertospamandeggsinsteadofthe
standardfooandbar.[45][46]
AcommonneologisminthePythoncommunityispythonic,whichcanhaveawiderangeofmeaningsrelatedtoprogramstyle.Tosaythatcodeis
pythonicistosaythatitusesPythonidiomswell,thatitisnaturalorshowsfluencyinthelanguage,thatitconformswithPython'sminimalist
philosophyandemphasisonreadability.Incontrast,codethatisdifficulttounderstandorreadslikearoughtranscriptionfromanotherprogramming
languageiscalledunpythonic.
https://en.wikipedia.org/wiki/Python_(programming_language)

4/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

UsersandadmirersofPythonespeciallythoseconsideredknowledgeableorexperiencedareoftenreferredtoasPythonists,Pythonistas,and
Pythoneers.[47][48]

Syntaxandsemantics
Pythonisintendedtobeahighlyreadablelanguage.Itisdesignedtohaveanunclutteredvisuallayout,frequentlyusingEnglishkeywordswhereother
languagesusepunctuation.Furthermore,PythonhasasmallernumberofsyntacticexceptionsandspecialcasesthanCorPascal.[49]

Indentation
Pythonuseswhitespaceindentation,ratherthancurlybracesorkeywords,todelimitblocksthisfeatureisalsotermedtheoffsiderule.Anincreasein
indentationcomesaftercertainstatementsadecreaseinindentationsignifiestheendofthecurrentblock.[50]

Statementsandcontrolflow
Python'sstatementsinclude(amongothers):
Theifstatement,whichconditionallyexecutesablockofcode,alongwithelseandelif(acontractionofelseif).
Theforstatement,whichiteratesoveraniterableobject,capturingeachelementtoalocalvariableforusebytheattachedblock.
Thewhilestatement,whichexecutesablockofcodeaslongasitsconditionistrue.
Thetrystatement,whichallowsexceptionsraisedinitsattachedcodeblocktobecaughtandhandledbyexceptclausesitalsoensuresthatclean
upcodeinafinallyblockwillalwaysberunregardlessofhowtheblockexits.
Theclassstatement,whichexecutesablockofcodeandattachesitslocalnamespacetoaclass,foruseinobjectorientedprogramming.
Thedefstatement,whichdefinesafunctionormethod.
Thewithstatement(fromPython2.5),whichenclosesacodeblockwithinacontextmanager(forexample,acquiringalockbeforetheblockof
codeisrunandreleasingthelockafterwards,oropeningafileandthenclosingit),allowingRAIIlikebehavior.
Thepassstatement,whichservesasaNOP.Itissyntacticallyneededtocreateanemptycodeblock.
Theassertstatement,usedduringdebuggingtocheckforconditionsthatoughttoapply.
Theyieldstatement,whichreturnsavaluefromageneratorfunction.FromPython2.5,yieldisalsoanoperator.Thisformisusedtoimplement
coroutines.
Theimportstatement,whichisusedtoimportmoduleswhosefunctionsorvariablescanbeusedinthecurrentprogram.
Theprintstatementwaschangedtotheprint()functioninPython3.[51]

https://en.wikipedia.org/wiki/Python_(programming_language)

5/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

Pythondoesnotsupporttailcalloptimizationorfirstclasscontinuations,and,accordingtoGuidovanRossum,itneverwill.[52][53]However,better
supportforcoroutinelikefunctionalityisprovidedin2.5,byextendingPython'sgenerators.[54]Priorto2.5,generatorswerelazyiteratorsinformation
waspassedunidirectionallyoutofthegenerator.AsofPython2.5,itispossibletopassinformationbackintoageneratorfunction,andasofPython3.3,
theinformationcanbepassedthroughmultiplestacklevels.[55]

Expressions
PythonexpressionsaresimilartolanguagessuchasCandJava:
Addition,subtraction,andmultiplicationarethesame,butthebehaviorofdivisiondiffers(seeMathematicsfordetails).Pythonalsoaddedthe**
operatorforexponentiation.
InPython,==comparesbyvalue,incontrasttoJava,whereitcomparesbyreference.(ValuecomparisonsinJavausetheequals()method.)
Python'sisoperatormaybeusedtocompareobjectidentities(comparisonbyreference).Comparisonsmaybechained,forexamplea<=b<=c.
Pythonusesthewordsand,or,notforitsbooleanoperatorsratherthanthesymbolic&&,||,!usedinJavaandC.
Pythonhasatypeofexpressiontermedalistcomprehension.Python2.4extendedlistcomprehensionsintoamoregeneralexpressiontermeda
generatorexpression.[39]
Anonymousfunctionsareimplementedusinglambdaexpressionshowever,thesearelimitedinthatthebodycanonlybeasingleexpression.
ConditionalexpressionsinPythonarewrittenasxifcelsey[56](differentinorderofoperandsfromthe?:operatorcommontomanyother
languages).
Pythonmakesadistinctionbetweenlistsandtuples.Listsarewrittenas[1,2,3],aremutable,andcannotbeusedasthekeysofdictionaries
(dictionarykeysmustbeimmutableinPython).Tuplesarewrittenas(1,2,3),areimmutableandthuscanbeusedasthekeysofdictionaries,
providedallelementsofthetupleareimmutable.Theparenthesesaroundthetupleareoptionalinsomecontexts.Tuplescanappearontheleft
sideofanequalsignhenceastatementlikex,y=y,xcanbeusedtoswaptwovariables.
Pythonhasa"stringformat"operator%.ThisfunctionsanalogoustoprintfformatstringsinC,e.g."foo=%sbar=%d"%("blah",2)evaluatesto
"foo=blahbar=2".InPython3and2.6+,thiswassupplementedbytheformat()methodofthestrclass,e.g."foo={0}bar={1}".format("blah",
2).
Pythonhasvariouskindsofstringliterals:
Stringsdelimitedbysingleordoublequotationmarks.UnlikeinUnixshells,PerlandPerlinfluencedlanguages,singlequotationmarks
anddoublequotationmarksfunctionidentically.Bothkindsofstringusethebackslash(\)asanescapecharacterandthereisnoimplicit
stringinterpolationsuchas"$foo".
Triplequotedstrings,whichbeginandendwithaseriesofthreesingleordoublequotationmarks.Theymayspanmultiplelinesand
functionlikeheredocumentsinshells,PerlandRuby.
Rawstringvarieties,denotedbyprefixingthestringliteralwithanr.Noescapesequencesareinterpretedhencerawstringsareuseful
whereliteralbackslashesarecommon,suchasregularexpressionsandWindowsstylepaths.Compare"@quoting"inC#.
Pythonhasindexandsliceexpressionsonlists,denotedasa[key],a[start:stop]ora[start:stop:step].Indexesarezerobased,andnegative
https://en.wikipedia.org/wiki/Python_(programming_language)

6/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

indexesarerelativetotheend.Slicestakeelementsfromthestartindexupto,butnotincluding,thestopindex.Thethirdsliceparameter,called
steporstride,allowselementstobeskippedandreversed.Sliceindexesmaybeomitted,forexamplea[:]returnsacopyoftheentirelist.Each
elementofasliceisashallowcopy.
InPython,adistinctionbetweenexpressionsandstatementsisrigidlyenforced,incontrasttolanguagessuchasCommonLisp,Scheme,orRuby.This
leadstosomeduplicationoffunctionality.Forexample:
Listcomprehensionsvs.forloops
Conditionalexpressionsvs.ifblocks
Theeval()vs.exec()builtinfunctions(inPython2,execisastatement)theformerisforexpressions,thelatterisforstatements.
Statementscannotbeapartofanexpression,solistandothercomprehensionsorlambdaexpressions,allbeingexpressions,cannotcontainstatements.
Aparticularcaseofthisisthatanassignmentstatementsuchasa=1cannotformpartoftheconditionalexpressionofaconditionalstatement.Thishas
theadvantageofavoidingaclassicCerrorofmistakinganassignmentoperator=foranequalityoperator==inconditions:if(c=1){...}isvalid
Ccodebutifc=1:...causesasyntaxerrorinPython.

Methods
Methodsonobjectsarefunctionsattachedtotheobject'sclassthesyntaxinstance.method(argument)is,fornormalmethodsandfunctions,syntactic
sugarforClass.method(instance,argument).Pythonmethodshaveanexplicitselfparametertoaccessinstancedata,incontrasttotheimplicitself(or
this)insomeotherobjectorientedprogramminglanguages(e.g.C++,Java,ObjectiveC,orRuby).[57]

Typing
Pythonusesducktypingandhastypedobjectsbutuntypedvariablenames.Typeconstraintsarenotcheckedatcompiletimerather,operationsonan
objectmayfail,signifyingthatthegivenobjectisnotofasuitabletype.Despitebeingdynamicallytyped,Pythonisstronglytyped,forbidding
operationsthatarenotwelldefined(forexample,addinganumbertoastring)ratherthansilentlyattemptingtomakesenseofthem.
Pythonallowsprogrammerstodefinetheirowntypesusingclasses,whicharemostoftenusedforobjectorientedprogramming.Newinstancesof
classesareconstructedbycallingtheclass(forexample,SpamClass()orEggsClass()),andtheclassesthemselvesareinstancesofthemetaclasstype
(itselfaninstanceofitself),allowingmetaprogrammingandreflection.
Priortoversion3.0,Pythonhadtwokindsofclasses:"oldstyle"and"newstyle".[58]OldstyleclasseswereeliminatedinPython3.0,makingallclasses
newstyle.Inversionsbetween2.2and3.0,bothkindsofclassescouldbeused.Thesyntaxofbothstylesisthesame,thedifferencebeingwhetherthe
classobjectisinheritedfrom,directlyorindirectly(allnewstyleclassesinheritfromobjectandareinstancesoftype).
https://en.wikipedia.org/wiki/Python_(programming_language)

7/20

12/25/2015

Type

Python(programminglanguage)Wikipedia,thefreeencyclopedia

SummaryofPython3'sbuiltintypes
Description

Mutable

Syntaxexample

Immutable Acharacterstring:SequenceofUnicodecodepoints.

'Wikipedia'
"Wikipedia"
"""Spanning
multiple
lines"""

bytearray

Mutable

bytearray(b'SomeASCII')
bytearray(b"SomeASCII")
bytearray([119,105,107,105])

bytes

Immutable Sequenceofbytes.

b'SomeASCII'
b"SomeASCII"
bytes([119,105,107,105])

list

Mutable

[4.0,'string',True]

tuple

Immutable Cancontainmixedtypes.

set

Mutable

Unorderedset,containsnoduplicates.Cancontainmixedtypesaslongastheyare
hashable.

{4.0,'string',True}

frozenset

Immutable

Unorderedset,containsnoduplicates.Cancontainmixedtypesaslongastheyare
hashable.

frozenset([4.0,'string',
True])

dict

Mutable

Associativearray(ordictionary)ofkeyandvaluepairs.
Cancontainmixedtypes(keysandvalues).Keysmustbeahashabletype.

{'key1':1.0,3:False}

int

Immutable Integerofunlimitedmagnitude.[59]

42

float

Immutable Floatingpointnumber(systemdefinedprecision).

3.1415927

complex

Immutable Complexnumberwithrealandimaginaryparts.

3+2.7j

bool

Immutable Booleanvalue.

True
False

str

ellipsis

Sequenceofbytes.

List,cancontainmixedtypes.

AnellipsisplaceholdertobeusedasanindexinNumPyarrays.

(4.0,'string',True)

...

Mathematics
https://en.wikipedia.org/wiki/Python_(programming_language)

8/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

PythonhastheusualCarithmeticoperators(+,,*,/,%).Italsohas**forexponentiation,e.g.5**3==125and9**0.5==3.0,andanewmatrix
multiply@operatorisincludedinversion3.5.[60]
Thebehaviorofdivisionhaschangedsignificantlyovertime:[61]
Python2.1andearlierusetheCdivisionbehavior.The/operatorisintegerdivisionifbothoperandsareintegers,andfloatingpointdivision
otherwise.Integerdivisionroundstowards0,e.g.7/3==2and7/3==2.
Python2.2changesintegerdivisiontoroundtowardsnegativeinfinity,e.g.7/3==2and7/3==3.Thefloordivision//operatoris
introduced.So7//3==2,7//3==3,7.5//3==2.0and7.5//3==3.0.Addingfrom__future__importdivisioncausesamodule
tousePython3.0rulesfordivision(seenext).
Python3.0changes/toalwaysbefloatingpointdivision.InPythonterms,thepre3.0/is"classicdivision",theversion3.0/is"realdivision",
and//is"floordivision".
Roundingtowardsnegativeinfinity,thoughdifferentfrommostlanguages,addsconsistency.Forinstance,itmeansthattheequation(a+b)//b==a
//b+1isalwaystrue.Italsomeansthattheequationb*(a//b)+a%b==aisvalidforbothpositiveandnegativevaluesofa.However,
maintainingthevalidityofthisequationmeansthatwhiletheresultofa%bis,asexpected,inthehalfopeninterval[0,b),wherebisapositiveinteger,
ithastolieintheinterval(b,0]whenbisnegative.[62]
Pythonprovidesaroundfunctionforroundingafloattothenearestinteger.Fortiebreaking,versionsbefore3useroundawayfromzero:round(0.5)is
1.0,round(0.5)is1.0.[63]Python3usesroundtoeven:round(1.5)is2,round(2.5)is2.[64]
Pythonallowsbooleanexpressionswithmultipleequalityrelationsinamannerthatisconsistentwithgeneralusageinmathematics.Forexample,the
expressiona<b<ctestswhetheraislessthanbandbislessthanc.Cderivedlanguagesinterpretthisexpressiondifferently:inC,theexpression
wouldfirstevaluatea<b,resultingin0or1,andthatresultwouldthenbecomparedwithc.[65]
Pythonhasextensivebuiltinsupportforarbitraryprecisionarithmetic.Integersaretransparentlyswitchedfromthemachinesupportedmaximumfixed
precision(usually32or64bits),belongingtothepythontypeint,toarbitraryprecision,belongingtothepythontypelong,whereneeded.Thelatter
havean"L"suffixintheirtextualrepresentation.[66]TheDecimaltype/classinmoduledecimal(sinceversion2.4)providesdecimalfloatingpoint
numberstoarbitraryprecisionandseveralroundingmodes.[67]TheFractiontypeinmodulefractions(sinceversion2.6)providesarbitraryprecision
forrationalnumbers.[68]
DuetoPython'sextensivemathematicslibrary,itisfrequentlyusedasascientificscriptinglanguagetoaidinproblemssuchasnumericaldata
processingandmanipulation.
https://en.wikipedia.org/wiki/Python_(programming_language)

9/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

Libraries
Pythonhasalargestandardlibrary,commonlycitedasoneofPython'sgreateststrengths,[69]providingtoolssuitedtomanytasks.Thisisdeliberateand
hasbeendescribedasa"batteriesincluded"[25]Pythonphilosophy.ForInternetfacingapplications,alargenumberofstandardformatsandprotocols
(suchasMIMEandHTTP)aresupported.Modulesforcreatinggraphicaluserinterfaces,connectingtorelationaldatabases,pseudorandomnumber
generators,arithmeticwitharbitraryprecisiondecimals,[70]manipulatingregularexpressions,anddoingunittestingarealsoincluded.
Somepartsofthestandardlibraryarecoveredbyspecifications(forexample,theWSGIimplementationwsgireffollowsPEP333[71]),butthemajority
ofthemodulesarenot.Theyarespecifiedbytheircode,internaldocumentation,andtestsuite(ifsupplied).However,becausemostofthestandard
libraryiscrossplatformPythoncode,thereareonlyafewmodulesthatmustbealteredorcompletelyrewrittenbyalternativeimplementations.
ThestandardlibraryisnotessentialtorunPythonorembedPythonwithinanapplication.Blender2.49,forinstance,omitsmostofthestandardlibrary.
AsofAugust2015,thePythonPackageIndex,theofficialrepositoryofthirdpartysoftwareforPython,containsmorethan65,000packagesofferinga
widerangeoffunctionality,including:
graphicaluserinterfaces,webframeworks,multimedia,databases,networkingandcommunications
testframeworks,automationandwebscraping,documentationtools,systemadministration
scientificcomputing,textprocessing,imageprocessing

Developmentenvironments
MostPythonimplementations(includingCPython)canfunctionasacommandlineinterpreter,forwhichtheuserentersstatementssequentiallyand
receivestheresultsimmediately(REPL).Inshort,Pythonactsasashell.
Othershellsaddcapabilitiesbeyondthoseinthebasicinterpreter,includingIDLEandIPython.WhilegenerallyfollowingthevisualstyleofthePython
shell,theyimplementfeatureslikeautocompletion,retentionofsessionstate,andsyntaxhighlighting.
InadditiontostandarddesktopPythonIDEs(integrateddevelopmentenvironments),therearealsobrowserbasedIDEs,Sage(intendedfordeveloping
scienceandmathrelatedPythonprograms),andabrowserbasedIDEandhostingenvironment,PythonAnywhere.

Implementations
https://en.wikipedia.org/wiki/Python_(programming_language)

10/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

ThemainPythonimplementation,namedCPython,iswritteninCmeetingtheC89standard.[72]ItcompilesPythonprogramsintointermediate
bytecode,[73]whichisexecutedbythevirtualmachine.[74]CPythonisdistributedwithalargestandardlibrarywritteninamixtureofCandPython.Itis
availableinversionsformanyplatforms,includingMicrosoftWindows(whileWindowsXPsupportwasdroppedsince3.5,"perPEP11"[as
consideredoneofthe"littleusedplatforms"][75])andmostmodernUnixlikesystems.CPythonwasintendedfromalmostitsveryconceptiontobe
crossplatform.[76]
PyPyisafast,compliant[77]interpreterofPython2.7and3.2.ItsjustintimecompilerbringsasignificantspeedimprovementoverCPython.[78]A
versiontakingadvantageofmulticoreprocessorsusingsoftwaretransactionalmemoryisbeingcreated.[79]
StacklessPythonisasignificantforkofCPythonthatimplementsmicrothreadsitdoesnotusetheCmemorystack,thusallowingmassivelyconcurrent
programs.PyPyalsohasastacklessversion.[80]
Otherjustintimecompilershavebeendevelopedinthepast,butarenowunsupported:
GooglestartedaprojectcalledUnladenSwallowin2009withtheaimsofincreasingthespeedofthePythoninterpreterby5timesbyusingthe
LLVMandimprovingitsmultithreadingabilitytoscaletothousandsofcores.[81]
PsycoisaspecialisingjustintimecompilerthatintegrateswithCPythonandtransformsbytecodetomachinecodeatruntime.Theproducedcode
isspecialisedforcertaindatatypesandisfasterthanstandardPythoncode.
In2005,NokiareleasedaPythoninterpreterfortheSeries60mobilephonescalledPyS60.ItincludesmanyofthemodulesfromtheCPython
implementationsandsomeadditionalmodulesforintegrationwiththeSymbianoperatingsystem.Thisprojecthasbeenkeptuptodatetorunonall
variantsoftheS60platformandthereareseveralthirdpartymodulesavailable.TheNokiaN900alsosupportsPythonwithGTKwidgetlibraries,with
thefeaturethatprogramscanbebothwrittenandrunonthedeviceitself.[82]
Thereareseveralcompilerstohighlevelobjectlanguages,witheitherunrestrictedPython,arestrictedsubsetofPython,oralanguagesimilartoPython
asthesourcelanguage:
JythoncompilesintoJavabytecode,whichcanthenbeexecutedbyeveryJavavirtualmachineimplementation.ThisalsoenablestheuseofJava
classlibraryfunctionsfromthePythonprogram.
IronPythonfollowsasimilarapproachinordertorunPythonprogramsonthe.NETCommonLanguageRuntime.
TheRPythonlanguagecanbecompiledtoC,Javabytecode,orCommonIntermediateLanguage,andisusedtobuildthePyPyinterpreterof
Python.
PyjamascompilesPythontoJavaScript.
ShedSkincompilesPythontoC++.
CythonandPyrexcompiletoC.
https://en.wikipedia.org/wiki/Python_(programming_language)

11/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

AperformancecomparisonofvariousPythonimplementationsonanonnumerical(combinatorial)workloadwaspresentedatEuroSciPy'13.[83]

Development
Python'sdevelopmentisconductedlargelythroughthePythonEnhancementProposal(PEP)process.ThePEPprocessistheprimarymechanismfor
proposingmajornewfeatures,forcollectingcommunityinputonanissue,andfordocumentingthedesigndecisionsthathavegoneintoPython.[84]
OutstandingPEPsarereviewedandcommenteduponbythePythoncommunityandbyVanRossum,thePythonproject'sbenevolentdictatorforlife.[84]
EnhancementofthelanguagegoesalongwithdevelopmentoftheCPythonreferenceimplementation.Themailinglistpythondevistheprimaryforum
fordiscussionaboutthelanguage'sdevelopmentspecificissuesarediscussedintheRoundupbugtrackermaintainedatpython.org.[85]Development
takesplaceonaselfhostedsourcecoderepositoryrunningMercurial.[86]
CPython'spublicreleasescomeinthreetypes,distinguishedbywhichpartoftheversionnumberisincremented:
Backwardsincompatibleversions,wherecodeisexpectedtobreakandmustbemanuallyported.Thefirstpartoftheversionnumberis
incremented.Thesereleaseshappeninfrequentlyforexample,version3.0wasreleased8yearsafter2.0.
Majoror"feature"releases,whicharelargelycompatiblebutintroducenewfeatures.Thesecondpartoftheversionnumberisincremented.These
releasesarescheduledtooccurroughlyevery18months,andeachmajorversionissupportedbybugfixesforseveralyearsafteritsrelease.[87]
Bugfixreleases,whichintroducenonewfeaturesbutfixbugs.Thethirdandfinalpartoftheversionnumberisincremented.Thesereleasesare
madewheneverasufficientnumberofbugshavebeenfixedupstreamsincethelastrelease,orroughlyevery3months.Securityvulnerabilities
arealsopatchedinbugfixreleases.[88]
Anumberofalpha,beta,andreleasecandidatesarealsoreleasedaspreviewsandfortestingbeforethefinalreleaseismade.Althoughthereisarough
scheduleforeachrelease,thisisoftenpushedbackifthecodeisnotready.Thedevelopmentteammonitorthestateofthecodebyrunningthelargeunit
testsuiteduringdevelopment,andusingtheBuildBotcontinuousintegrationsystem.[89]
ThecommunityofPythondevelopershasalsocontributedover58,000softwaremodules(asof2May2015)tothePythonPackageIndex(calledPyPI),
theofficialrepositoryofthirdpartylibrariesforPython.
ThemajoracademicconferenceonPythonisnamedPyCon.TherearespecialmentoringprogrammeslikethePyladies.

Naming
https://en.wikipedia.org/wiki/Python_(programming_language)

12/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

Python'snameisderivedfromthetelevisionseriesMontyPython'sFlyingCircus,[90]anditiscommontouseMontyPythonreferencesinexample
code.[91]Forexample,themetasyntacticvariablesoftenusedinPythonliteraturearespamandeggs,insteadofthetraditionalfooandbar.[91][92]Aswell
asthis,theofficialPythondocumentationoftencontainsvariousobscureMontyPythonreferences.
TheprefixPyisusedtoshowthatsomethingisrelatedtoPython.ExamplesoftheuseofthisprefixinnamesofPythonapplicationsorlibrariesinclude
Pygame,abindingofSDLtoPython(commonlyusedtocreategames)PyS60,animplementationfortheSymbianS60operatingsystemPyQtand
PyGTK,whichbindQtandGTK,respectively,toPythonandPyPy,aPythonimplementationoriginallywritteninPython.

Use
Since2003,PythonhasconsistentlyrankedinthetoptenmostpopularprogramminglanguagesasmeasuredbytheTIOBEProgrammingCommunity
Index.AsofSeptember2015,itisinthefifthposition.[93]ItwasrankedasProgrammingLanguageoftheYearfortheyear2007and2010.[20]Itisthe
thirdmostpopularlanguagewhosegrammaticalsyntaxisnotpredominantlybasedonC,e.g.C++,ObjectiveC(note,C#andJavaonlyhavepartial
syntacticsimilaritytoC,suchastheuseofcurlybraces,andarecloserinsimilaritytoeachotherthanC).
Anempiricalstudyfoundscriptinglanguages(suchasPython)moreproductivethanconventionallanguages(suchasCandJava)foraprogramming
probleminvolvingstringmanipulationandsearchinadictionary.Memoryconsumptionwasoften"betterthanJavaandnotmuchworsethanCor
C++".[94]
LargeorganizationsthatmakeuseofPythonincludeGoogle,[95]Yahoo!,[96]CERN,[97]NASA,[98]andsomesmalleroneslikeILM,[99]andITA.[100]
Pythoncanserveasascriptinglanguageforwebapplications,e.g.,viamod_wsgifortheApachewebserver.[101]WithWebServerGatewayInterface,a
standardAPIhasevolvedtofacilitatetheseapplications.WebapplicationframeworkslikeDjango,Pylons,Pyramid,TurboGears,web2py,Tornado,
Flask,BottleandZopesupportdevelopersinthedesignandmaintenanceofcomplexapplications.PyjamasandIronPythoncanbeusedtodevelopthe
clientsideofAjaxbasedapplications.SQLAlchemycanbeusedasdatamappertoarelationaldatabase.Twistedisaframeworktoprogram
communicationsbetweencomputers,andisused(forexample)byDropbox.
LibrarieslikeNumPy,SciPyandMatplotliballowtheeffectiveuseofPythoninscientificcomputing,[102][103]withspecializedlibrariessuchas
BioPythonandAstropyprovidingdomainspecificfunctionality.Sageisamathematicalsoftwarewitha"notebook"programmableinPython:itslibrary
coversmanyaspectsofmathematics,includingalgebra,combinatorics,numericalmathematics,numbertheory,andcalculus.
Pythonhasbeensuccessfullyembeddedinanumberofsoftwareproductsasascriptinglanguage,includinginfiniteelementmethodsoftwaresuchas
Abaqus,3DparametricmodelerlikeFreeCAD,3Danimationpackagessuchas3dsMax,Blender,Cinema4D,Lightwave,Houdini,Maya,modo,
MotionBuilder,Softimage,thevisualeffectscompositorNuke,2DimagingprogramslikeGIMP,[104]Inkscape,ScribusandPaintShopPro,[105]and
https://en.wikipedia.org/wiki/Python_(programming_language)

13/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

musicalnotationprogramorscorewritercapella.GNUDebuggerusesPythonasaprettyprintertoshowcomplexstructuressuchasC++containers.Esri
promotesPythonasthebestchoiceforwritingscriptsinArcGIS.[106]Ithasalsobeenusedinseveralvideogames,[107][108]andhasbeenadoptedasfirst
ofthethreeavailableprogramminglanguagesinGoogleAppEngine,theothertwobeingJavaandGo.[109]
Pythonhasalsobeenusedinartificialintelligencetasks.[110][111][112][113]Asascriptinglanguagewithmodulearchitecture,simplesyntaxandrichtext
processingtools,Pythonisoftenusedfornaturallanguageprocessingtasks.[114]
ManyoperatingsystemsincludePythonasastandardcomponentthelanguageshipswithmostLinuxdistributions,AmigaOS4,FreeBSD,NetBSD,
OpenBSDandOSX,andcanbeusedfromtheterminal.AnumberofLinuxdistributionsuseinstallerswritteninPython:UbuntuusestheUbiquity
installer,whileRedHatLinuxandFedorausetheAnacondainstaller.GentooLinuxusesPythoninitspackagemanagementsystem,Portage.
Pythonhasalsoseenextensiveuseintheinformationsecurityindustry,includinginexploitdevelopment.[115][116]
MostoftheSugarsoftwarefortheOneLaptopperChildXO,nowdevelopedatSugarLabs,iswritteninPython.[117]
TheRaspberryPisingleboardcomputerprojecthasadoptedPythonasitsprincipaluserprogramminglanguage.
LibreOfficeincludesPythonandintendstoreplaceJavawithPython.PythonScriptingProviderisacorefeature[118]sinceVersion4.0from7February
2013.

LanguagesinfluencedbyPython
Python'sdesignandphilosophyhaveinfluencedseveralprogramminglanguages,including:
Boousesindentation,asimilarsyntax,andasimilarobjectmodel.However,Boousesstatictyping(aswellasoptionalducktyping)andis
closelyintegratedwiththe.NETFramework.[119]
Cobrausesindentationandasimilarsyntax.Cobra's"Acknowledgements"documentlistsPythonfirstamonglanguagesthatinfluencedit.[120]
However,Cobradirectlysupportsdesignbycontract,unittests,andoptionalstatictyping.[121]
ECMAScriptborrowediterators,generators,andlistcomprehensionsfromPython.[122]
Goisdescribedasincorporatingthe"developmentspeedofworkinginadynamiclanguagelikePython".[123]
GroovywasmotivatedbythedesiretobringthePythondesignphilosophytoJava.[124]
Juliawasdesigned"withtruemacros[..andtobe]asusableforgeneralprogrammingasPython[and]shouldbeasfastasC".[17]Callingtoor
fromJuliaispossibletowithPyCall.jl(https://github.com/stevengj/PyCall.jl)andaPythonpackagejyjulia(https://github.com/JuliaLang/pyjulia)
https://en.wikipedia.org/wiki/Python_(programming_language)

14/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

allowscalling,intheotherdirection,fromPython.
OCamlhasanoptionalsyntax,calledtwt(TheWhitespaceThing),inspiredbyPythonandHaskell.[125]
Ruby'screator,YukihiroMatsumoto,hassaid:"IwantedascriptinglanguagethatwasmorepowerfulthanPerl,andmoreobjectorientedthan
Python.That'swhyIdecidedtodesignmyownlanguage."[126]
CoffeeScriptisaprogramminglanguagethatcrosscompilestoJavaScriptithasPythoninspiredsyntax.
SwiftisaprogramminglanguageinventedbyAppleithassomePythoninspiredsyntax.[127]
Python'sdevelopmentpracticeshavealsobeenemulatedbyotherlanguages.Thepracticeofrequiringadocumentdescribingtherationalefor,and
issuessurrounding,achangetothelanguage(inPython'scase,aPEP)isalsousedinTcl[128]andErlang[129]becauseofPython'sinfluence.
PythonhasbeenawardedaTIOBEProgrammingLanguageoftheYearawardtwice(in2007and2010),whichisgiventothelanguagewiththe
greatestgrowthinpopularityoverthecourseofayear,asmeasuredbytheTIOBEindex.[130]

Seealso
IPython
ComparisonofintegrateddevelopmentenvironmentsforPython
Comparisonofprogramminglanguages
Listofprogramminglanguages
Offsiderulelanguages,whereblocksareexpressedbyindentation
PythonforS60
Cython
LAMP(softwarebundle)
LEAP(softwarebundle)

References
1.
2.
3.
4.
5.
6.
7.

Hastings,Larry(20151207)."Python3.5.1andPython3.4.4rc1arenowavailable".PythonInsider.ThePythonCoreDevelopers.Retrieved20151208.
"PythonReleasePython2.7.11".PythonSoftwareFoundation.Retrieved16December2015.
"TypehintingforPython".LWN.net.24December2014.Retrieved5May2015.
Fileextension.pyowillberemovedinPython3.5.SeePEP0488(https://www.python.org/dev/peps/pep0488/)
Holth,Moore(30March2014)."PEP0441ImprovingPythonZIPApplicationSupport".Retrieved12Nov2015.
"WhywasPythoncreatedinthefirstplace?".GeneralPythonFAQ.PythonSoftwareFoundation.Retrieved22March2007.
Kuchling,AndrewM.(22December2006)."InterviewwithGuidovanRossum(July1998)".amk.ca.Retrieved12March2012.

https://en.wikipedia.org/wiki/Python_(programming_language)

15/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

8. vanRossum,Guido(1993)."AnIntroductiontoPythonforUNIX/CProgrammers".ProceedingsoftheNLUUGnajaarsconferentie(DutchUNIXusersgroup).
"eventhoughthedesignofCisfarfromideal,itsinfluenceonPythonisconsiderable."
9. "Classes".ThePythonTutorial.PythonSoftwareFoundation.Retrieved20February2012."ItisamixtureoftheclassmechanismsfoundinC++andModula3"
10. Simionato,Michele."ThePython2.3MethodResolutionOrder".PythonSoftwareFoundation."TheC3methoditselfhasnothingtodowithPython,sinceitwas
inventedbypeopleworkingonDylananditisdescribedinapaperintendedforlispers"
11. Kuchling,A.M."FunctionalProgrammingHOWTO".Pythonv2.7.2documentation.PythonSoftwareFoundation.Retrieved9February2012.
12. Schemenauer,NeilPeters,TimHetland,MagnusLie(18May2001)."PEP255SimpleGenerators".PythonEnhancementProposals.PythonSoftware
Foundation.Retrieved9February2012.
13. Smith,KevinD.Jewett,JimJ.Montanaro,SkipBaxter,Anthony(2September2004)."PEP318DecoratorsforFunctionsandMethods".PythonEnhancement
Proposals.PythonSoftwareFoundation.Retrieved24February2012.
14. "MoreControlFlowTools".Python3documentation.PythonSoftwareFoundation.Retrieved24July2015.
15. "PerlandPythoninfluencesinJavaScript".www.2ality.com.24February2013.Retrieved15May2015.
16. Rauschmayer,Axel."Chapter3:TheNatureofJavaScriptInfluences".O'Reilly,SpeakingJavaScript.Retrieved15May2015.
17. "WhyWeCreatedJulia".Juliawebsite.February2012.Retrieved5June2014.
18. Bini,Ola(2007).PracticalJRubyonRailsWeb2.0Projects:bringingRubyonRailstotheJavaplatform.Berkeley:APress.p.3.ISBN9781590598818.
19. Lattner,Chris(3June2014)."ChrisLattner'sHomepage".ChrisLattner.Retrieved3June2014."TheSwiftlanguageistheproductoftirelesseffortfromateam
oflanguageexperts,documentationgurus,compileroptimizationninjas,andanincrediblyimportantinternaldogfoodinggroupwhoprovidedfeedbacktohelp
refineandbattletestideas.Ofcourse,italsogreatlybenefitedfromtheexperienceshardwonbymanyotherlanguagesinthefield,drawingideasfromObjective
C,Rust,Haskell,Ruby,Python,C#,CLU,andfartoomanyotherstolist."
20. TIOBESoftwareIndex(2015)."TIOBEProgrammingCommunityIndexPython".Retrieved10September2015.
21. "TheRedMonkProgrammingLanguageRankings:June2015tecosystems".Redmonk.com.1July2015.Retrieved10September2015.
22. Summerfield,Mark.RapidGUIProgrammingwithPythonandQt."Pythonisaveryexpressivelanguage,whichmeansthatwecanusuallywritefarfewerlinesof
Pythoncodethanwouldberequiredforanequivalentapplicationwrittenin,say,C++orJava"
23. McConnell,Steve(30November2009).CodeComplete,p.100.ISBN9780735636972.
24. Kuhlman,Dave."APythonBook:BeginningPython,AdvancedPython,andPythonExercises".
25. "AboutPython".PythonSoftwareFoundation.Retrieved24April2012.,secondsection"FansofPythonusethephrase"batteriesincluded"todescribethestandard
library,whichcoverseverythingfromasynchronousprocessingtozipfiles."
26. "PyInstallerHomePage".Retrieved27January2014.
27. Venners,Bill(13January2003)."TheMakingofPython".ArtimaDeveloper.Artima.Retrieved22March2007.
28. vanRossum,Guido(20January2009)."ABriefTimelineofPython".TheHistoryofPython.Google.Retrieved20January2009.
29. vanRossum,Guido(29August2000)."SETL(was:Lukewarmaboutrangeliterals)".PythonDev(Mailinglist).Retrieved13March2011.
30. vanRossum,Guido(1996)."Forewordfor"ProgrammingPython"(1sted.)".Retrieved10July2014.
31. Kuchling,A.M.Zadka,Moshe(16October2000)."What'sNewinPython2.0".PythonSoftwareFoundation.Retrieved11February2012.
32. "Python3.0Release".PythonSoftwareFoundation.Retrieved8July2009.
33. vanRossum,Guido(5April2006)."PEP3000Python3000".PythonEnhancementProposals.PythonSoftwareFoundation.Retrieved27June2009.
34. TheCainGangLtd."PythonMetaclasses:Who?Why?When?".Archivedfromtheoriginal(PDF)on10December2009.Retrieved27June2009.
35. "3.3.Specialmethodnames".ThePythonLanguageReference.PythonSoftwareFoundation.Retrieved27June2009.
36. "PyDBC:methodpreconditions,methodpostconditionsandclassinvariantsforPython".Retrieved24September2011.
37. "ContractsforPython".Retrieved24September2011.
https://en.wikipedia.org/wiki/Python_(programming_language)

16/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

38. "PyDatalog".Retrieved22July2012.
39. Hettinger,Raymond(30January2002)."PEP289GeneratorExpressions".PythonEnhancementProposals.PythonSoftwareFoundation.Retrieved19February
2012.
40. "6.5itertoolsFunctionscreatingiteratorsforefficientlooping".Docs.python.org.Retrieved24November2008.
41. Peters,Tim(19August2004)."PEP20TheZenofPython".PythonEnhancementProposals.PythonSoftwareFoundation.Retrieved24November2008.
42. Martelli,AlexRavenscroft,AnnaAscher,David(2005).PythonCookbook,2ndEdition.O'ReillyMedia.p.230.ISBN9780596007973.
43. "PythonCulture".
44. "GeneralPythonFAQWhyisitcalledPython?".
45. "15WaysPythonIsaPowerfulForceontheWeb".
46. "pprintDataprettyprinterPythonDocumentation".
47. Goodger,David."CodeLikeaPythonista:IdiomaticPython".
48. "HowtothinklikeaPythonista".
49. "IsPythonagoodlanguageforbeginningprogrammers?".GeneralPythonFAQ.PythonSoftwareFoundation.Retrieved21March2007.
50. "MythsaboutindentationinPython".Secnetix.de.Retrieved19April2011.
51. Sweigart,Al(2010)."AppendixA:DifferencesBetweenPython2and3".InventYourOwnComputerGameswithPython(2ed.).ISBN9780982106013.
Retrieved20February2014.
52. vanRossum,Guido(22April2009)."TailRecursionElimination".Neopythonic.blogspot.be.Retrieved3December2012.
53. vanRossum,Guido(9February2006)."LanguageDesignIsNotJustSolvingPuzzles".Artimaforums.Artima.Retrieved21March2007.
54. vanRossum,GuidoEby,PhillipJ.(10May2005)."PEP342CoroutinesviaEnhancedGenerators".PythonEnhancementProposals.PythonSoftware
Foundation.Retrieved19February2012.
55. "PEP380".Python.org.Retrieved3December2012.
56. vanRossum,GuidoHettinger,Raymond(7February2003)."PEP308ConditionalExpressions".PythonEnhancementProposals.PythonSoftwareFoundation.
Retrieved13July2011.
57. "Whymust'self'beusedexplicitlyinmethoddefinitionsandcalls?".DesignandHistoryFAQ.PythonSoftwareFoundation.Retrieved19February2012.
58. "ThePythonLanguageReference,section3.3.Newstyleandclassicclasses,forrelease2.7.1".Retrieved12January2011.
59. Zadka,MoshevanRossum,Guido(11March2001)."PEP237UnifyingLongIntegersandIntegers".PythonEnhancementProposals.PythonSoftware
Foundation.Retrieved24September2011.
60. "PEP465Adedicatedinfixoperatorformatrixmultiplication".python.org.
61. Zadka,MoshevanRossum,Guido(11March2001)."PEP238ChangingtheDivisionOperator".PythonEnhancementProposals.PythonSoftwareFoundation.
Retrieved23October2013.
62. "WhyPython'sIntegerDivisionFloors".Retrieved25August2010.
63. "round",ThePythonstandardlibrary,release2.7,2:Builtinfunctions,retrieved14August2011
64. "round",ThePythonstandardlibrary,release3.2,2:Builtinfunctions,retrieved14August2011
65. PythonEssentialReference,DavidMBeazley
66. "BuiltinType".docs.python.org.
67. Batista,Facundo."PEP0327DecimalDataType".Python.org.Retrieved20150926.
68. "WhatsNewinPython2.6Pythonv2.6.9documentation".docs.python.org.Retrieved20150926.
69. Piotrowski,Przemyslaw(July2006)."BuildaRapidWebDevelopmentEnvironmentforPythonServerPagesandOracle".OracleTechnologyNetwork.Oracle.
Retrieved12March2012.
https://en.wikipedia.org/wiki/Python_(programming_language)

17/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

70. Batista,Facundo(17October2003)."PEP327DecimalDataType".PythonEnhancementProposals.PythonSoftwareFoundation.Retrieved24November
2008.
71. Eby,PhillipJ.(7December2003)."PEP333PythonWebServerGatewayInterfacev1.0".PythonEnhancementProposals.PythonSoftwareFoundation.
Retrieved19February2012.
72. vanRossum,Guido(5June2001)."PEP7StyleGuideforCCode".PythonEnhancementProposals.PythonSoftwareFoundation.Retrieved24November
2008.
73. "CPythonbytecode".Docs.python.org.Retrieved19April2011.
74. "Python2.5internals"(PDF).Retrieved19April2011.
75. https://docs.python.org/3/whatsnew/3.5.html
76. "AnInterviewwithGuidovanRossum".Oreilly.com.Retrieved24November2008.
77. "PyPycompatibility".Pypy.org.Retrieved3December2012.
78. "speedcomparisonbetweenCPythonandPypy".Speed.pypy.org.Retrieved3December2012.
79. "STMwiththreads".Morepypy.blogspot.be.10June2012.Retrieved3December2012.
80. "ApplicationlevelStacklessfeaturesPyPy2.0.2documentation".Doc.pypy.org.Retrieved17July2013.
81. "PlansforoptimizingPython".GoogleProjectHosting.Google.15December2009.Retrieved24September2011.
82. "PythonontheNokiaN900".StochasticGeometry.
83. Murri,Riccardo(2013).PerformanceofPythonruntimesonanonnumericscientificcode.EuropeanConferenceonPythoninScience(EuroSciPy).
84. Warsaw,BarryHylton,JeremyGoodger,David(13June2000)."PEP1PEPPurposeandGuidelines".PythonEnhancementProposals.PythonSoftware
Foundation.Retrieved19April2011.
85. Cannon,Brett."Guido,SomeGuys,andaMailingList:HowPythonisDeveloped".python.org.PythonSoftwareFoundation.Archivedfromtheoriginalon1
June2009.Retrieved27June2009.
86. "PythonDeveloper'sGuide".
87. Norwitz,Neal(8April2002)."[PythonDev]ReleaseSchedules(wasStability&change)".Retrieved27June2009.
88. AahzBaxter,Anthony(15March2001)."PEP6BugFixReleases".PythonEnhancementProposals.PythonSoftwareFoundation.Retrieved27June2009.
89. "PythonBuildbot".PythonDevelopersGuide.PythonSoftwareFoundation.Retrieved24September2011.
90. "GeneralPythonFAQ".Pythonv2.7.3documentation.Docs.python.org.Retrieved3December2012.
91. "WhettingYourAppetite".ThePythonTutorial.PythonSoftwareFoundation.Retrieved20February2012.
92. "InPython,shouldIuseelseafterareturninanifblock?".StackOverflow.StackExchange.17February2011.Retrieved6May2011.
93. http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
94. Prechelt,Lutz(14March2000)."AnempiricalcomparisonofC,C++,Java,Perl,Python,Rexx,andTcl"(PDF).Retrieved30August2013.
95. "QuotesaboutPython".PythonSoftwareFoundation.Retrieved8January2012.
96. "OrganizationsUsingPython".PythonSoftwareFoundation.Retrieved15January2009.
97. "Python:theholygrailofprogramming".CERNBulletin(CERNPublications)(31/2006).31July2006.Retrieved11February2012.
98. Shafer,DanielG.(17January2003)."PythonStreamlinesSpaceShuttleMissionDesign".PythonSoftwareFoundation.Retrieved24November2008.
99. Fortenberry,Tim(17January2003)."IndustrialLight&MagicRunsonPython".PythonSoftwareFoundation.Retrieved11February2012.
100. Taft,DarrylK.(5March2007)."PythonSlithersintoSystems".eWeek.com.ZiffDavisHoldings.Retrieved24September2011.
101. "UsagestatisticsandmarketshareofPythonforwebsites".2012.Retrieved18December2012.
102. Oliphant,Travis(2007)."PythonforScientificComputing".ComputinginScienceandEngineering.
103. Millman,K.JarrodAivazis,Michael(2011)."PythonforScientistsandEngineers".ComputinginScienceandEngineering13(2):912.
https://en.wikipedia.org/wiki/Python_(programming_language)

18/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

104. "InstallersforGIMPforWindowsFrequentlyAskedQuestions".26July2013.Retrieved26July2013.
105. "jascpsp9components".Archivedfromtheoriginalon23April2014.
106. "Aboutgettingstartedwithwritinggeoprocessingscripts".ArcGISDesktopHelp9.2.EnvironmentalSystemsResearchInstitute.17November2006.Retrieved
11February2012.
107. CCPporkbelly(24August2010)."StacklessPython2.7".EVECommunityDevBlogs.CCPGames."Asyoumayknow,EVEhasatitscoretheprogramming
languageknownasStacklessPython."
108. Caudill,Barry(20September2005)."ModdingSidMeier'sCivilizationIV".SidMeier'sCivilizationIVDeveloperBlog.FiraxisGames.Archivedfromthe
originalon10August2010."wecreatedthreelevelsoftools...ThenextleveloffersPythonandXMLsupport,lettingmodderswithmoreexperiencemanipulate
thegameworldandeverythinginit."
109. "PythonLanguageGuide(v1.0)".GoogleDocumentsListDataAPIv1.0.Google.Archivedfromtheoriginalon10August2010.
110. "PythonforArtificialIntelligence".Wiki.python.org.19July2012.Archivedfromtheoriginalon1November2012.Retrieved3December2012.
111. Paine,Jocelyn,ed.(August2005)."AIinPython".AIExpertNewsletter(Amzi!).Retrieved11February2012.
112. "PyAIML0.8.5:PythonPackageIndex".Pypi.python.org.Retrieved17July2013.
113. Russell,StuartJ.&Norvig,Peter(2009).ArtificialIntelligence:AModernApproach(3rded.).UpperSaddleRiver,NJ:PrenticeHall.p.1062.ISBN978013
6042594.Retrieved11February2012.
114. "NaturalLanguageToolkit".
115. "Immunity:KnowingYou'reSecure".
116. "Corelabssite".
117. "WhatisSugar?".SugarLabs.Retrieved11February2012.
118. "4.0NewFeaturesandFixes".LibreOffice.org.TheDocumentFoundation.2013.Retrieved25February2013.
119. "GotchasforPythonUsers".boo.codehaus.org.CodehausFoundation.Retrieved24November2008.
120. Esterbrook,Charles."Acknowledgements".cobralanguage.com.CobraLanguage.Retrieved7April2010.
121. Esterbrook,Charles."ComparisontoPython".cobralanguage.com.CobraLanguage.Retrieved7April2010.
122. "Proposals:iteratorsandgenerators[ES4Wiki]".wiki.ecmascript.org.Retrieved24November2008.
123. Kincaid,Jason(10November2009)."GooglesGo:ANewProgrammingLanguageThatsPythonMeetsC++".TechCrunch.Retrieved29January2010.
124. Strachan,James(29August2003)."GroovythebirthofanewdynamiclanguagefortheJavaplatform".
125. Lin,Mike."TheWhitespaceThingforOCaml".MassachusettsInstituteofTechnology.Retrieved12April2009.
126. "AnInterviewwiththeCreatorofRuby".Linuxdevcenter.com.Retrieved3December2012.
127. Lattner,Chris(3June2014)."ChrisLattner'sHomepage".ChrisLattner.Retrieved3June2014."IstartedworkontheSwiftProgrammingLanguageinJulyof
2010.Iimplementedmuchofthebasiclanguagestructure,withonlyafewpeopleknowingofitsexistence.Afewother(amazing)peoplestartedcontributingin
earnestlatein2011,anditbecameamajorfocusfortheAppleDeveloperToolsgroupinJuly2013[...]drawingideasfromObjectiveC,Rust,Haskell,Ruby,
Python,C#,CLU,andfartoomanyotherstolist."
128. Kupries,AndreasFellows,DonalK.(14September2000)."TIP#3:TIPFormat".tcl.tk.TclDeveloperXchange.Retrieved24November2008.
129. Gustafsson,PerNiskanen,Raimo(29January2007)."EEP1:EEPPurposeandGuidelines".erlang.org.Retrieved19April2011.
130. "TIOBEProgrammingCommunityIndexforMarch2012".TIOBESoftware.March2012.Retrieved25March2012.

Furtherreading
https://en.wikipedia.org/wiki/Python_(programming_language)

19/20

12/25/2015

Python(programminglanguage)Wikipedia,thefreeencyclopedia

Downey,AllenB(May2012).ThinkPython:HowtoThinkLikeaComputerScientist(Version1.6.6ed.).ISBN9780521725965.
Hamilton,Naomi(5August2008)."TheAZofProgrammingLanguages:Python".Computerworld.Retrieved31March2010.
Lutz,Mark(2013).LearningPython(5thed.).O'ReillyMedia.ISBN9780596158064.
Pilgrim,Mark(2004).DiveIntoPython.Apress.ISBN9781590593561.
Pilgrim,Mark(2009).DiveIntoPython3.Apress.ISBN9781430224150.
Summerfield,Mark(2009).ProgramminginPython3(2nded.).AddisonWesleyProfessional.ISBN9780321680563.

Externallinks
Officialwebsite(http://www.python.org)
Python(programminglanguage)(news://comp.lang.python)newsgrouponUsenet(alternativefreewebaccess
(https://groups.google.com/group/comp.lang.python)usingGoogleGroups)
TheHistoryofPython(blogbyGuidovanRossum)(http://pythonhistory.blogspot.co.uk/)
Pythondevelopmentlist(https://mail.python.org/mailman/listinfo/pythonlist)
Python(https://www.dmoz.org/Computers/Programming/Languages/Python)atDMOZ
Retrievedfrom"https://en.wikipedia.org/w/index.php?title=Python_(programming_language)&oldid=695757119"
Categories: Classbasedprogramminglanguages Crossplatformfreesoftware Dutchinventions Dynamicallytypedprogramminglanguages
Educationalprogramminglanguages Highlevelprogramminglanguages Objectorientedprogramminglanguages
Programminglanguagescreatedin1991 Python(programminglanguage) Scriptinglanguages Textorientedprogramminglanguages
Thispagewaslastmodifiedon18December2015,at10:20.
TextisavailableundertheCreativeCommonsAttributionShareAlikeLicenseadditionaltermsmayapply.Byusingthissite,youagreetothe
TermsofUseandPrivacyPolicy.WikipediaisaregisteredtrademarkoftheWikimediaFoundation,Inc.,anonprofitorganization.

https://en.wikipedia.org/wiki/Python_(programming_language)

20/20

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy