View
36
Download
1
Category
Preview:
Citation preview
1ZUIPO #BTJDT
'MFUDIFS )FJTMFS %BWJE "NPT %BO #BEFS
$PQZSJHIU j 3FBM 1ZUIPO SFBMQZUIPO�DPN ������
'PS POMJOF JOGPSNBUJPO BOE PSEFSJOH PG UIJT BOE PUIFS CPPLT CZ 3FBM
1ZUIPO QMFBTF WJTJU SFBMQZUIPO�DPN� 'PS NPSF JOGPSNBUJPO QMFBTF
DPOUBDU VT BU JOGP!SFBMQZUIPO�DPN�
*4#/� ������������� QBQFSCBDL
*4#/� ������������� FMFDUSPOJD
$PWFS EFTJHO CZ "MESFO 4BOUPT
ψ1ZUIPOω BOE UIF 1ZUIPO MPHPT BSF USBEFNBSLT PS SFHJTUFSFE USBEF�
NBSLT PG UIF 1ZUIPO 4PGUXBSF 'PVOEBUJPO VTFE CZ 3FBM 1ZUIPO XJUI
QFSNJTTJPO GSPN UIF 'PVOEBUJPO�
5IBOL ZPV GPS EPXOMPBEJOH UIJT FCPPL� 5IJT FCPPL JT MJDFOTFE GPS ZPVS
QFSTPOBM FOKPZNFOU POMZ� 5IJT FCPPLNBZOPU CF SF�TPME PS HJWFO BXBZ
UP PUIFS QFPQMF� *G ZPV XPVME MJLF UP TIBSF UIJT CPPL XJUI BOPUIFS QFS�
TPO QMFBTF QVSDIBTF BO BEEJUJPOBM DPQZ GPS FBDI SFDJQJFOU� *G ZPVυSF
SFBEJOH UIJT CPPL BOE EJE OPU QVSDIBTF JU PS JU XBT OPU QVSDIBTFE GPS
ZPVS VTF POMZ UIFO QMFBTF SFUVSO UP SFBMQZUIPO�DPN�QZCBTJDT�CPPL
BOE QVSDIBTF ZPVS PXO DPQZ� 5IBOL ZPV GPS SFTQFDUJOH UIF IBSE XPSL
CFIJOE UIJT CPPL�
6QEBUFE ���������� 8F XPVME MJLF UP UIBOL PVS FBSMZ BDDFTT SFBEFST
GPS UIFJS FYDFMMFOU GFFECBDL�
5IJT JT BO &BSMZ "DDFTT WFSTJPO PG ω1ZUIPO #BTJDT�
" 1SBDUJDBM *OUSPEVDUJPO UP 1ZUIPO �ϊ
8JUI ZPVS IFMQ XF DBO NBLF UIJT CPPL FWFO CFUUFS�
"U UIF FOE PG FBDI TFDUJPO PG UIF CPPL ZPVυMM нOE B ψNBHJDBMω GFFECBDL
MJOL� $MJDLJOH UIF MJOL UBLFT ZPV UP BO POMJOF GFFECBDL GPSN XIFSF
ZPV DBO TIBSF ZPVS UIPVHIUT XJUI VT�
8F XFMDPNF BOZ BOE BMM GFFECBDL PS TVHHFTUJPOT GPS JN�
QSPWFNFOU ZPV NBZ IBWF�
1MFBTF GFFM GSFF UP CF BT UFSTF PS EFUBJMFE BT ZPV TFF нU� "MM GFFECBDL
JT TUPSFE BOPOZNPVTMZ CVU ZPV DBO DIPPTF UP MFBWF ZPVS OBNF BOE
DPOUBDU JOGPSNBUJPO TPXF DBO GPMMPXVQPSNFOUJPO ZPVPOPVS ψ5IBOL
:PVω QBHF�
8F VTF B EJмFSFOU GFFECBDL MJOL GPS FBDI TFDUJPO TP XFυMM BMXBZT LOPX
XIJDI QBSU PG UIF CPPL ZPVS OPUFT SFGFS UP�
5IBOL ZPV GPS IFMQJOH VTNBLF UIJT CPPL BO FWFONPSF WBMVBCMF MFBSO�
JOH SFTPVSDF GPS UIF 1ZUIPO DPNNVOJUZ�
ρ %BO #BEFS &EJUPS�JO�$IJFG BU 3FBM 1ZUIPO
8IBU 1ZUIPOJTUBT 4BZ "CPVU 1ZUIPO #BTJDT� " 1SBDUJDBM *O�
USPEVDUJPO UP 1ZUIPO �
ψ* MPWF <UIF CPPL>� 5IF XPSEJOH JT DBTVBM FBTZ UP VOEFSTUBOE BOE
NBLFT UIF JOGPSNBUJPO рPX XFMM� * OFWFS GFFM MPTU JO UIF NBUFSJBM BOE
JUυT OPU UPP EFOTF TP JUυT FBTZ GPS NF UP SFWJFX PMEFS DIBQUFST PWFS BOE
PWFS�
*υWF MPPLFE BU PWFS �� EJоFSFOU 1ZUIPO UVUPSJBMT�CPPLT�POMJOF DPVSTFT
BOE *υWF QSPCBCMZ MFBSOFE UIF NPTU GSPN 3FBM 1ZUIPO�ω
ρ 5IPNBT8POH
ψ5ISFF ZFBST MBUFS BOE * TUJMM SFUVSO UP NZ 3FBM 1ZUIPO CPPLT XIFO *
OFFE B RVJDL SFGSFTIFS PO VTBHF PG WJUBM 1ZUIPO DPNNBOET�ω
ρ 3PC 'PXMFS
ψ* рPVOEFSFE GPS B MPOH UJNF USZJOH UP UFBDI NZTFMG� * TMPHHFE UISPVHI
EP[FOT PG JODPNQMFUF POMJOF UVUPSJBMT� * TOPP[FE UISPVHI IPVST PG CPS�
JOH TDSFFODBTUT� * HBWF VQ PO DPVOUMFTT DSVGUZ CPPLT GSPN CJH�UJNF
QVCMJTIFST� "OE UIFO * GPVOE 3FBM 1ZUIPO�
5IF FBTZ�UP�GPMMPX TUFQ�CZ�TUFQ JOTUSVDUJPOT CSFBL UIF CJH DPODFQUT
EPXO JOUP CJUF�TJ[FE DIVOLT XSJUUFO JO QMBJO &OHMJTI� 5IF BVUIPST
OFWFS GPSHFU UIFJS BVEJFODF BOEBSF DPOTJTUFOUMZ UIPSPVHIBOEEFUBJMFE
JO UIFJS FYQMBOBUJPOT� *υN VQ BOE SVOOJOH OPX CVU * DPOTUBOUMZ SFGFS
UP UIF NBUFSJBM GPS HVJEBODF�ω
ρ +BSFE /JFMTFO
ψ* MPWF UIF CPPL CFDBVTF BU UIF FOE PG FBDI QBSUJDVMBS MFTTPO UIFSF BSF
SFBM XPSME BOE JOUFSFTUJOH DIBMMFOHFT� * KVTU CVJMU B TBWJOHT FTUJNBUPS
UIBU BDUVBMMZ SFрFDUT NZ TBWJOHT BDDPVOU π OFBU�ω
ρ%SFX 1SFTDPUU
ψ"T B QSBDUJDF PG XIBU ZPV UBVHIU * TUBSUFE CVJMEJOH TJNQMF TDSJQUT GPS
QFPQMF PO NZ UFBN UP IFMQ UIFN JO UIFJS FWFSZEBZ EVUJFT� 8IFO NZ
NBOBHFST OPUJDFE UIBU * XBT PоFSFE B OFX QPTJUJPO BT B EFWFMPQFS�
* LOPX UIFSF JT IFBQT PG UIJOHT UP MFBSO BOE UIFSF XJMM CF IVHF DIBM�
MFOHFT CVU * пOBMMZ TUBSUFE EPJOH XIBU * SFBMMZ DBNF UP MJLF�
0ODF BHBJO� ."/: 5)"/,4�ω
ρ,BNJM
ψ8IBU * GPVOE HSFBU BCPVU UIF 3FBM 1ZUIPO DPVSTFT DPNQBSFE UP PUIFST
JT IPX UIFZ FYQMBJO UIJOHT JO UIF TJNQMFTU XBZ QPTTJCMF�
" MPU PG DPVSTFT JO BOZ EJTDJQMJOF SFBMMZ SFRVJSF UIF MFBSOJOH PG B MPU PG
KBSHPO XIFO JO GBDU XIBU JT CFJOH UBVHIU DPVME CF UBVHIU RVJDLMZ BOE
TVDDJODUMZ XJUIPVU UPP NVDI PG JU� 5IF DPVSTFT EP B WFSZ HPPE KPC PG
LFFQJOH UIF FYBNQMFT JOUFSFTUJOH�ω
ρ 4UFQIFO (SBEZ
ψ"GUFS SFBEJOH UIF пSTU 3FBM 1ZUIPO DPVSTF *XSPUF B TDSJQU UP BVUPNBUF
BNVOEBOF UBTL BU XPSL� 8IBU VTFE UP UBLFNF UISFF UP пWF IPVST OPX
UBLFT MFTT UIBO UFO NJOVUFT�ω
ρ #SBOEPO :PVOHEBMF
ψ)POFTUMZ UISPVHIPVU UIJT XIPMF QSPDFTT XIBU * GPVOE XBT KVTU NF
MPPLJOH SFBMMZ IBSE GPS UIJOHT UIBU DPVMENBZCF CF BEEFE PS JNQSPWFE
CVU UIJT UVUPSJBM JT BNB[JOH� :PV EP B XPOEFSGVM KPC PG FYQMBJOJOH BOE
UFBDIJOH 1ZUIPO JO BXBZ UIBU QFPQMF MJLFNF B DPNQMFUF OPWJDF DPVME
SFBMMZ HSBTQ�
5IF рPX PG UIF MFTTPOTXPSLT QFSGFDUMZ UISPVHIPVU� 5IF FYFSDJTFT USVMZ
IFMQFE BMPOH UIF XBZ BOE ZPV GFFM WFSZ BDDPNQMJTIFE XIFO ZPV пOJTI
VQ UIF CPPL� * UIJOL ZPV IBWF B HJGU GPS NBLJOH 1ZUIPO TFFN NPSF
BUUBJOBCMF UP QFPQMF PVUTJEF UIF QSPHSBNNJOH XPSME�
5IJT JT TPNFUIJOH * OFWFS UIPVHIU * XPVME CF EPJOH PS MFBSOJOH BOE
XJUI B MJUUMF QVTI GSPN ZPV * BN MFBSOJOH JU BOE * DBO TFF UIBU JU XJMM CF
OPUIJOH CVU CFOFпDJBM UP NF JO UIF GVUVSF�ω
ρ 4IFB ,MVTFXJD[
ψ5IF BVUIPST PG UIF DPVSTFT IBWF /05 GPSHPUUFO XIBU JU JT MJLF UP CF
B CFHJOOFS π TPNFUIJOH UIBU NBOZ BVUIPST EP π BOE BTTVNF OPUI�
JOH BCPVU UIFJS SFBEFST XIJDI NBLFT UIF DPVSTFT GBOUBTUJD SFBET� 5IF
DPVSTFT BSF BMTP BDDPNQBOJFE CZ TPNF HSFBU WJEFPT BT XFMM BT QMFOUZ
PG SFGFSFODFT GPS FYUSB MFBSOJOH IPNFXPSL BTTJHONFOUT BOE FYBNQMF
DPEF UIBU ZPV DBO FYQFSJNFOU XJUI BOE FYUFOE�
* SFBMMZ MJLFE UIBU UIFSF XBT BMXBZT GVMM DPEF FYBNQMFT BOE FBDI MJOF
PG DPEF IBE HPPE DPNNFOUT TP ZPV DBO TFF XIBU JT EPJOH XIBU�
* OPX IBWF B OVNCFS PG CPPLT PO 1ZUIPO BOE UIF 3FBM 1ZUIPO POFT
BSF UIF POMZ POFT * IBWF BDUVBMMZ пOJTIFE DPWFS UP DPWFS BOE UIFZ
BSF IBOET EPXO UIF CFTU PO UIF NBSLFU� *G MJLF NF ZPVυSF OPU B QSP�
HSBNNFS * XPSL JO POMJOF NBSLFUJOH ZPVυMM пOE UIFTF DPVSTFT UP CF
MJLF B NFOUPS EVF UP UIF DMFBS рVо�GSFF FYQMBOBUJPOT� )JHIMZ SFDPN�
NFOEFE�ω
ρ $SBJH "EEZNBO
"CPVU UIF "VUIPST
"U3FBM 1ZUIPO ZPVυMM MFBSO SFBM�XPSME QSPHSBNNJOH TLJMMT GSPN B DPN�
NVOJUZ PG QSPGFTTJPOBM 1ZUIPOJTUBT GSPN BMM BSPVOE UIF XPSME�
5IF SFBMQZUIPO�DPN XFCTJUF MBVODIFE JO ���� BOE DVSSFOUMZ IFMQT
NPSF UIBO B NJMMJPO 1ZUIPO EFWFMPQFST FBDI NPOUI XJUI GSFF
QSPHSBNNJOH UVUPSJBMT BOE JO�EFQUI MFBSOJOH SFTPVSDFT�
&WFSZPOF XIPXPSLFE PO UIJT CPPL JT B QSBDUJUJPOFSXJUI TFWFSBM ZFBST
PG QSPGFTTJPOBM FYQFSJFODF JO UIF TPGUXBSF JOEVTUSZ� )FSF BSF UIFNFN�
CFST PG UIF 3FBM 1ZUIPO 5VUPSJBM 5FBN XIP XPSLFE PO 1ZUIPO #BTJDT�
'MFUDIFS )FJTMFS JT UIF GPVOEFS PG )VOUFS� XIFSF IF UFBDIFT EFWFM�
PQFST IPX UP IBDL BOE TFDVSF NPEFSO XFC BQQT� "T POF PG UIF GPVOE�
JOH NFNCFST PG 3FBM 1ZUIPO 'MFUDIFS XSPUF UIF PSJHJOBM WFSTJPO PG
UIJT CPPL JO �����
%BWJE "NPT JT B NBUIFNBUJDJBO CZ USBJOJOH B EBUB TDJFOUJTU�1ZUIPO
EFWFMPQFS CZ QSPGFTTJPO BOE B DPмFF KVOLJF CZ DIPJDF� )F JT BNFNCFS
PG UIF 3FBM 1ZUIPO UVUPSJBM UFBN BOE SFXSPUF MBSHF QBSUT PG UIJT CPPL
UP VQEBUF JU UP 1ZUIPO ��
%BO #BEFS JT UIF FEJUPS�JO�DIJFG BU 3FBM 1ZUIPO BOE B DPNQMFUF
1ZUIPO OVU� 8IFO IFυT OPU CVTZ DPEJOH PS TJQQJOH DPмFF IF IFMQT
1ZUIPO EFWFMPQFST UBLF UIFJS DPEJOH TLJMMT UP UIF OFYU MFWFM XJUI
UVUPSJBMT CPPLT BOE POMJOF USBJOJOH�
$POUFOUT
$POUFOUT �
'PSFXPSE ��
� *OUSPEVDUJPO ��
��� 8IZ 5IJT #PPL � � � � � � � � � � � � � � � � � � � � ��
��� "CPVU 3FBM 1ZUIPO � � � � � � � � � � � � � � � � � � ��
��� )PX UP 6TF 5IJT #PPL � � � � � � � � � � � � � � � � � ��
��� #POVT .BUFSJBM � -FBSOJOH 3FTPVSDFT � � � � � � � � ��
� 4FUUJOH 6Q 1ZUIPO ��
��� 8JOEPXT � � � � � � � � � � � � � � � � � � � � � � � ��
��� NBD04 � � � � � � � � � � � � � � � � � � � � � � � � � ��
��� 6CVOUV -JOVY � � � � � � � � � � � � � � � � � � � � � ��
� :PVS 'JSTU 1ZUIPO 1SPHSBN ��
��� 8SJUF B 1ZUIPO 4DSJQU � � � � � � � � � � � � � � � � � ��
��� .FTT 5IJOHT 6Q � � � � � � � � � � � � � � � � � � � � ��
��� $SFBUF B 7BSJBCMF � � � � � � � � � � � � � � � � � � � ��
��� *OTQFDU 7BMVFT JO UIF *OUFSBDUJWF 8JOEPX � � � � � � ��
��� -FBWF :PVSTFMG )FMQGVM /PUFT � � � � � � � � � � � � � ��
��� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ��
� 4USJOHT BOE .FUIPET ��
��� 4USJOH 'VOEBNFOUBMT � � � � � � � � � � � � � � � � � ��
��� #BTJD 4USJOH 0QFSBUJPOT � � � � � � � � � � � � � � � � ��
��� 6TF 4USJOH .FUIPET � � � � � � � � � � � � � � � � � � ��
�
$POUFOUT
��� *OUFSBDU 8JUI 6TFS *OQVU � � � � � � � � � � � � � � � ��
��� $IBMMFOHF� 1JDL "QBSU :PVS 6TFSυT *OQVU � � � � � � � ��
��� 8PSLJOH 8JUI 4USJOHT BOE /VNCFST � � � � � � � � � ��
��� 4USFBNMJOF :PVS 1SJOU 4UBUFNFOUT � � � � � � � � � � ��
��� 'JOE B 4USJOH JO B 4USJOH � � � � � � � � � � � � � � � � ��
��� $IBMMFOHF� 5VSO :PVS 6TFS *OUP B -��U )�Y�S � � � � ��
���� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ��
� /VNCFST BOE .BUI ��
��� %P 4PNF "SJUINFUJD � � � � � � � � � � � � � � � � � � ��
��� $IBMMFOHF� 1FSGPSN $BMDVMBUJPOT PO 6TFS *OQVU � � � ���
��� .BLF 1ZUIPO -JF UP :PV � � � � � � � � � � � � � � � � ���
��� 8PSL 8JUI /VNCFST � � � � � � � � � � � � � � � � � ���
��� 1SJOU /VNCFST JO 4UZMF � � � � � � � � � � � � � � � � ���
��� $PNQMFY /VNCFST � � � � � � � � � � � � � � � � � � ���
��� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
� 'VODUJPOT BOE -PPQT ���
��� 8SJUF :PVS 0XO 'VODUJPOT � � � � � � � � � � � � � � ���
��� $IBMMFOHF� $POWFSU 5FNQFSBUVSFT � � � � � � � � � � ���
��� 3VO JO $JSDMFT � � � � � � � � � � � � � � � � � � � � � ���
��� $IBMMFOHF� 5SBDL :PVS *OWFTUNFOUT � � � � � � � � � � ���
��� 6OEFSTUBOE 4DPQF JO 1ZUIPO � � � � � � � � � � � � � ���
��� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
� 'JOEJOH BOE 'JYJOH $PEF #VHT ���
��� 6TF UIF %FCVH $POUSPM 8JOEPX � � � � � � � � � � � ���
��� 4RVBTI 4PNF #VHT � � � � � � � � � � � � � � � � � � ���
��� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
� $POEJUJPOBM -PHJD BOE $POUSPM 'MPX ���
��� $PNQBSF 7BMVFT � � � � � � � � � � � � � � � � � � � � ���
��� "EE 4PNF -PHJD � � � � � � � � � � � � � � � � � � � � ���
��� $POUSPM UIF 'MPX PG :PVS 1SPHSBN � � � � � � � � � � ���
��� $IBMMFOHF� 'JOE UIF 'BDUPST PG B /VNCFS � � � � � � � ���
��� #SFBL 0VU PG UIF 1BUUFSO � � � � � � � � � � � � � � � ���
��� 3FDPWFS 'SPN &SSPST � � � � � � � � � � � � � � � � � ���
�
$POUFOUT
��� 4JNVMBUF &WFOUT BOE $BMDVMBUF 1SPCBCJMJUJFT � � � � � ���
��� $IBMMFOHF� 4JNVMBUF BO &MFDUJPO � � � � � � � � � � � ���
��� $IBMMFOHF� 4JNVMBUF B $PJO 5PTT &YQFSJNFOU � � � � � ���
���� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
� -JTUT 5VQMFT BOE %JDUJPOBSJFT ���
��� -JTUT� .VMUJQVSQPTF $POUBJOFST � � � � � � � � � � � � ���
��� $IBMMFOHF� -JTU PG MJTUT � � � � � � � � � � � � � � � � � ���
��� $IBMMFOHF� 8BY 1PFUJD � � � � � � � � � � � � � � � � ���
��� .BLF 1FSNBOFOU -JTUT � � � � � � � � � � � � � � � � ���
��� 4UPSF 3FMBUJPOTIJQT JO %JDUJPOBSJFT � � � � � � � � � � ���
��� $IBMMFOHF� $BQJUBM $JUZ -PPQ � � � � � � � � � � � � � ���
��� $IBMMFOHF� $BUT 8JUI )BUT � � � � � � � � � � � � � � ���
��� $POWFSU #FUXFFO -JTUT 5VQMFT BOE %JDUJPOBSJFT � � � ���
��� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
�� 0CKFDU�0SJFOUFE 1SPHSBNNJOH 001 ���
���� %FнOF B $MBTT � � � � � � � � � � � � � � � � � � � � � ���
���� *OTUBOUJBUF BO 0CKFDU � � � � � � � � � � � � � � � � � ���
���� *OIFSJU 'SPN 0UIFS $MBTTFT � � � � � � � � � � � � � � ���
���� $IBMMFOHF� .PEFM B 'BSN � � � � � � � � � � � � � � � ���
���� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
�� 'JMF *OQVU BOE 0VUQVU ���
���� 3FBE BOE 8SJUF 4JNQMF 'JMFT � � � � � � � � � � � � � ���
���� 8PSLJOH 8JUI 1BUIT JO 1ZUIPO � � � � � � � � � � � � ���
���� $IBMMFOHF� 6TF 1BUUFSO .BUDIJOH UP %FMFUF 'JMFT � � � ���
���� 3FBE BOE 8SJUF $47 %BUB � � � � � � � � � � � � � � � ���
���� $IBMMFOHF� $SFBUF B )JHI 4DPSFT -JTU � � � � � � � � � ���
���� $IBMMFOHF� 4QMJU B $47 нMF � � � � � � � � � � � � � � ���
���� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
�� *OTUBMMJOH 1BDLBHFT 8JUI 1JQ ���
���� *OTUBMM B 5IJSE�1BSUZ 1BDLBHF 8JUI 1JQ � � � � � � � � ���
���� 5IF 1JUGBMMT PG 5IJSE�1BSUZ 1BDLBHFT � � � � � � � � � ���
���� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
��
$POUFOUT
�� $SFBUJOH BOE .PEJGZJOH 1%' 'JMFT ���
���� 8PSL 8JUI UIF $POUFOUT PG B 1%' 'JMF � � � � � � � � ���
���� .BOJQVMBUF 1%' 'JMFT � � � � � � � � � � � � � � � � � ���
���� $IBMMFOHF� "EE B $PWFS 4IFFU UP B 1%' 'JMF � � � � � ���
���� $SFBUF 1%' 'JMFT � � � � � � � � � � � � � � � � � � � ���
���� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
�� 8PSLJOH8JUI %BUBCBTFT ���
���� "O *OUSPEVDUJPO UP 42-JUF � � � � � � � � � � � � � � ���
���� -JCSBSJFT GPS 8PSLJOH 8JUI 0UIFS 42- %BUBCBTFT � � ���
���� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
�� *OUFSBDUJOH 8JUI UIF8FC ���
���� 4DSBQF BOE 1BSTF 5FYU 'SPN 8FCTJUFT � � � � � � � � ���
���� 6TF BO )5.- 1BSTFS UP 4DSBQF 8FCTJUFT � � � � � � � ���
���� *OUFSBDU 8JUI )5.- 'PSNT � � � � � � � � � � � � � � ���
���� *OUFSBDU 8JUI 8FCTJUFT JO 3FBM�5JNF � � � � � � � � � ���
���� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
�� 4DJFOUJрD $PNQVUJOH BOE (SBQIJOH ���
���� 6TF /VN1Z GPS .BUSJY .BOJQVMBUJPO � � � � � � � � � ���
���� 6TF matplotlib GPS 1MPUUJOH (SBQIT � � � � � � � � � � ���
���� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
�� (SBQIJDBM 6TFS *OUFSGBDFT ���
���� "EE (6* &MFNFOUT 8JUI &BTZ(6* � � � � � � � � � � ���
���� $IBMMFOHF� 8SJUF B (6* UP )FMQ B 6TFS .PEJGZ 'JMFT � ���
���� *OUSPEVDUJPO UP 5LJOUFS � � � � � � � � � � � � � � � � ���
���� $POUSPM -BZPVU 8JUI (FPNFUSZ .BOBHFST � � � � � � ���
���� .BLF :PVS "QQMJDBUJPOT *OUFSBDUJWF � � � � � � � � � ���
���� $IBMMFOHF� 3FUVSO PG UIF 1PFU � � � � � � � � � � � � � ���
���� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT � � � � � � � � � ���
�� 'JOBM 5IPVHIUT BOE /FYU 4UFQT ���
���� 'SFF 8FFLMZ 5JQT GPS 1ZUIPO %FWFMPQFST � � � � � � � ���
���� 1ZUIPO 5SJDLT� 5IF #PPL � � � � � � � � � � � � � � � ���
���� 1ZUIPOJTUB$BGF� " $PNNVOJUZ GPS 1ZUIPO %FWFMPQFST ���
��
'PSFXPSE
)FMMP BOE XFMDPNF UP 1ZUIPO #BTJDT� " 1SBDUJDBM *OUSPEVDUJPO
UP 1ZUIPO �� * IPQF ZPV BSF SFBEZ UP MFBSO XIZ TP NBOZ QSPGFTTJPOBM
BOE IPCCZJTU EFWFMPQFST BSF ESBXO UP 1ZUIPO BOE IPX ZPV DBO CFHJO
VTJOH JU PO ZPVS QSPKFDUT TNBMM BOE MBSHF SJHIU BXBZ� 5IJT CPPL JT
UBSHFUFE BU CFHJOOFST XIP FJUIFS LOPX B MJUUMF QSPHSBNNJOH CVU OPU
UIF 1ZUIPO MBOHVBHF BOE FDPTZTUFN BT XFMM BT DPNQMFUF CFHJOOFST�
*G ZPV EPOυU IBWF B $PNQVUFS 4DJFODF EFHSFF EPOυU XPSSZ� 'MFUDIFS
%BWJE BOE %BO XJMM HVJEF ZPV UISPVHI UIF JNQPSUBOU DPNQVUJOH DPO�
DFQUT XIJMF UFBDIJOH ZPV UIF 1ZUIPO CBTJDT BOE KVTU BT JNQPSUBOUMZ
TLJQQJOH UIF VOOFDFTTBSZ EFUBJMT BU нSTU�
1ZUIPO *T B 'VMM�4QFDUSVN -BOHVBHF
8IFO MFBSOJOH B OFX QSPHSBNNJOH MBOHVBHF ZPV EPOυU ZFU IBWF UIF
FYQFSJFODF UP KVEHF IPX XFMM JU XJMM TFSWF ZPV JO UIF MPOH SVO� *G ZPV
BSF DPOTJEFSJOH 1ZUIPO MFU NF BTTVSF ZPV UIBU UIJT JT B HPPE DIPJDF�
0OF LFZ SFBTPO JT UIBU 1ZUIPO JT B GVMM�TQFDUSVN MBOHVBHF�
8IBU EP * NFBO CZ UIJT 4PNF MBOHVBHFT BSF WFSZ HPPE GPS CFHJOOFST�
5IFZ IPME ZPVS IBOE BOE NBLF QSPHSBNNJOH TVQFS FBTZ� 8F DBO HP
UP UIF FYUSFNF BOE MPPL BU WJTVBM MBOHVBHFT TVDI BT 4DSBUDI� )FSF
ZPV HFU CMPDLT UIBU SFQSFTFOU QSPHSBNNJOH DPODFQUT WBSJBCMFT MPPQT
NFUIPE DBMMT FUD BOE ZPV ESBH BOE ESPQ UIFN PO B WJTVBM TVSGBDF�
4DSBUDI NBZ CF FBTZ UP HFU TUBSUFE XJUI GPS TJNQMF QSPHSBNT� #VU ZPV
DBOOPU CVJME QSPGFTTJPOBM BQQMJDBUJPOTXJUI JU� /BNF POF 'PSUVOF ���
DPNQBOZ UIBU QPXFST JUT DPSF CVTJOFTT MPHJD XJUI 4DSBUDI� $BNF VQ
FNQUZ .F UPP � CFDBVTF UIBU XPVME CF JOTBOJUZ�
��
$POUFOUT
0UIFS MBOHVBHFT BSF JODSFEJCMZ QPXFSGVM GPS FYQFSU EFWFMPQFST� 5IF
NPTU QPQVMBS POF JO UIJT DBUFHPSZ JT MJLFMZ $�� BOE JUT DMPTF SFMBUJWF
$� 8IBUFWFS XFC CSPXTFS ZPV VTFE UPEBZ XBT MJLFMZ XSJUUFO JO
$�$��� :PVS PQFSBUJOH TZTUFN SVOOJOH UIBU CSPXTFS XBT BMTP WFSZ
MJLFMZ $�$��� :PVS GBWPSJUF нSTU�QFSTPO TIPPUFS PS TUSBUFHZ WJEFP
HBNF :PV OBJMFE JU� $�$��� :PV DBO EP BNB[JOH UIJOHT XJUI UIFTF
MBOHVBHFT� #VU UIFZ BSF XIPMMZ VOXFMDPNJOH UP OFXDPNFST MPPLJOH
GPS B HFOUMF JOUSPEVDUJPO�
:PV NJHIU OPU IBWF SFBE B MPU PG $�� DPEF� *U DBO BMNPTU NBLF ZPVS
FZFT CVSO� )FSFυT BO FYBNQMF B SFBM BMCFJU DPNQMFY POF�
template <typename T>
_Defer<void(*(PID<T>, void (T::*)(void)))
(const PID<T>&, void (T::*)(void))>
defer(const PID<T>& pid, void (T::*method)(void))
{
void (*dispatch)(const PID<T>&, void (T::*)(void)) =
&process::template dispatch<T>;
return std::tr1::bind(dispatch, pid, method);
}
1MFBTF KVTU OP�
#PUI 4DSBUDI BOE $�� BSF EFDJEFEMZ OPU XIBU * XPVME DBMM GVMM�
TQFDUSVN MBOHVBHFT� *O UIF 4DSBUDI MFWFM JUυT FBTZ UP TUBSU CVU
ZPV IBWF UP TXJUDI UP B ψSFBMω MBOHVBHF UP CVJME SFBM BQQMJDBUJPOT�
$POWFSTFMZ ZPV DBO CVJME SFBM BQQT XJUI $�� ZFU UIFSF JT OP HFOUMF
PO�SBNQ� :PV EJWF IFBE нSTU JOUP BMM UIF DPNQMFYJUZ PG UIBU MBOHVBHF
XIJDI FYJTUT UP TVQQPSU UIFTF SJDI BQQMJDBUJPOT�
1ZUIPO PO UIF PUIFS IBOE JT TQFDJBM� *U JT B GVMM�TQFDUSVN MBOHVBHF�
8F PGUFO KVEHF UIF TJNQMJDJUZ PG B MBOHVBHF CBTFE PO UIF ψIFMMP XPSEω
UFTU� 5IBU JT XIBU TZOUBY BOE BDUJPOT BSF OFDFTTBSZ UP HFU UIBU MBO�
HVBHF UP PVUQVU ψIFMMP XPSMEω UP UIF VTFS *O 1ZUIPO JU DPVMEOυU CF
TJNQMFS�
��
$POUFOUT
print("Hello world")
5IBUυT JU� )PXFWFS * нOE UIJT BO VOTBUJTGZJOH UFTU�
5IF IFMMP XPSME UFTU JT VTFGVM CVU SFBMMZ OPU FOPVHI UP TIPX UIF QPXFS
PS DPNQMFYJUZ PG B MBOHVBHF� -FUυT USZ BOPUIFS FYBNQMF� /PU FWFSZ�
UIJOH IFSF OFFET UP NBLF UPUBM TFOTF KVTU GPMMPX BMPOH UP HFU UIF ;FO
PG JU� 5IF CPPL DPWFST UIFTF DPODFQUT BOENPSF BT ZPV HP UISPVHI� 5IF
OFYU FYBNQMF JT DFSUBJOMZ TPNFUIJOH ZPV DPVME XSJUF OFBS UIF FOE�
)FSFυT UIF OFX UFTU� 8IBU XPVME JU UBLF UP XSJUF B QSPHSBN UIBU BD�
DFTTFT BO FYUFSOBMXFCTJUF EPXOMPBET UIF DPOUFOU UP ZPVS BQQ JONFN�
PSZ UIFO EJTQMBZT B TVCTFDUJPO PG UIBU DPOUFOU UP UIF VTFS -FUυT USZ
UIBU FYQFSJNFOU XJUI 1ZUIPO � XJUI UIF IFMQ PG UIF SFRVFTUT QBDLBHF
XIJDI OFFET UP CF JOTUBMMFE � NPSF PO UIBU JO DIBQUFS ���
import requests
resp = requests.get("https://realpython.com")
html = resp.text
print(html[205:294])
*ODSFEJCMZ UIBUυT JU� 8IFO SVO UIF PVUQVU JT TPNFUIJOH MJLF�
<title>Python Tutorials – Real Python</title>
<meta name="author" content="Real Python">
5IJT JT UIF FBTZ HFUUJOH TUBSUFE TJEF PG UIF TQFDUSVN PG 1ZUIPO� " GFX
USJWJBM MJOFT BOE JODSFEJCMF QPXFS JT VOMFBTIFE� #FDBVTF 1ZUIPO IBT
BDDFTT UP TP NBOZ QPXFSGVM CVU XFMM�QBDLBHFE MJCSBSJFT TVDI BT SF�
RVFTUT JU JT PGUFO EFTDSJCFE BT IBWJOH CBUUFSJFT JODMVEFE�
4P UIFSF ZPV IBWF B TJNQMF QPXFSGVM TUBSUFS FYBNQMF� 0O UIF SFBM BQQT
TJEF PG UIJOHT XF IBWFNBOZ JODSFEJCMF BQQMJDBUJPOTXSJUUFO JO 1ZUIPO
BT XFMM� :PV NBZ IBWF IFBSE PG PS FWFO VTFE B TJUF DBMMFE :PV5VCF�
*UυT XSJUUFO JO 1ZUIPO BOE QSPDFTTFT � ��� ��� SFRVFTUT � TFDPOE� *O�
TUBHSBN JT BOPUIFS FYBNQMF PG B 1ZUIPO BQQMJDBUJPO� .PSF DMPTF UP
��
$POUFOUT
IPNF XF FWFO IBWF SFBMQZUIPO�DPN XSJUUFO JO %KBOHP BOE 1ZUIPO �
BOE NZ TJUFT TVDI BT UBMLQZUIPO�GN XSJUUFO JO 1ZSBNJE BOE 1ZUIPO
��
5IJT GVMM�TQFDUSVN BTQFDU PG 1ZUIPO NFBOT ZPV DBO TUBSU FBTZ BOE
BEPQU NPSF BEWBODFE GFBUVSFT BT ZPV OFFE UIFN XIFO ZPVS BQQMJDB�
UJPO EFNBOET HSPX�
1ZUIPO *T 1PQVMBS
:PV NJHIU IBWF IFBSE UIBU 1ZUIPO JT QPQVMBS� 0O POF IBOE JU NBZ
TFFN UIBU JU EPFTOυU SFBMMZ NBUUFS IPX QPQVMBS B MBOHVBHF JT JG ZPV
DBO CVJME UIF BQQ ZPV XBOU UP CVJME XJUI JU� 'PS CFUUFS PS XPSTF JO
TPGUXBSF EFWFMPQNFOU QPQVMBSJUZ JT B TUSPOH JOEJDBUPS PG UIF RVBMJUZ
PG MJCSBSJFT ZPV XJMM IBWF BWBJMBCMF BT XFMM UIF OVNCFS PG KPC PQFOJOHT
UIFSF BSF� *O TIPSU ZPV TIPVME UFOE UP HSBWJUBUF UPXBSETNPSF QPQVMBS
UFDIOPMPHJFT BT UIFSF XJMM CF NPSF DIPJDFT BOE JOUFHSBUJPOT BWBJMBCMF�
4P JT 1ZUIPO BDUVBMMZ UIBU QPQVMBS :FT JU JT� :PVυMM PG DPVSTF нOE B
MPU PG IZQF BOE IZQFSCPMF� #VU UIFSF BSF QMFOUZ PG TUBUT UP CBDL UIJT
POF� -FUυT MPPL BU TPNF BOBMZUJDT BWBJMBCMF BOE QSFTFOUFE CZ 4UBDL�
0WFSGMPX�DPN�
5IFZ SVO B TJUF DBMMFE 4UBDL0WFSсPX 5SFOET� )FSF ZPV DBO MPPL BU
UIF USFOET GPS WBSJPVT UFDIOPMPHJFT CZ UBH� 8IFO XF DPNQBSF 1ZUIPO
UP UIF PUIFS MJLFMZ DBOEJEBUFT ZPV DPVME QJDL UP MFBSO QSPHSBNNJOH
ZPVυMM TFF POF JT VOMJLF UIF PUIFST�
��
$POUFOUT
:PV DBO FYQMPSF UIJT DIBSU BOE DSFBUF TJNJMBS DIBSUT UP UIJT POF PWFS BU
JOTJHIUT�TUBDLPWFSGMPX�DPN�USFOET�
/PUJDF UIF JODSFEJCMF HSPXUI PG 1ZUIPO DPNQBSFE UP UIF GMBUMJOF PS
FWFO EPXOXBSE USFOE PG UIF PUIFS VTVBM DBOEJEBUFT� *G ZPV BSF CFUUJOH
ZPVS GVUVSF PO UIF TVDDFTT PG B HJWFO UFDIOPMPHZ XIJDI POF XPVME ZPV
DIPPTF GSPN UIJT MJTU
5IBUυT KVTU POF DIBSU XIBU EPFT JU SFBMMZ UFMM VT 8FMM MFUυT MPPL BU
BOPUIFS� 4UBDL0WFSGMPX EPFT B ZFBSMZ TVSWFZ PG EFWFMPQFST� *UυT DPN�
QSFIFOTJWF BOE WFSZ XFMM EPOF� :PV DBO нOE UIF GVMM ���� SFTVMUT BU JO�
TJHIUT�TUBDLPWFSGMPX�DPN�TVSWFZ������� 'SPN UIBU XSJUFVQ *υE MJLF
UP DBMM ZPVS BUUFOUJPO UP B TFDUJPO FOUJUMFE .PTU -PWFE %SFBEFE BOE
8BOUFE -BOHVBHFT� *O UIF NPTU XBOUFE TFDUJPO ZPVυMM нOE SFTQPOTFT
GPS�
%FWFMPQFST XIP BSF OPU EFWFMPQJOH XJUI UIF MBOHVBHF
PS UFDIOPMPHZ CVU IBWF FYQSFTTFE JOUFSFTU JO EFWFMPQJOH
XJUI JU
"HBJO JO UIF HSBQI CFMPX ZPVυMM TFF UIBU 1ZUIPO JT UPQQJOH UIF DIBSUT
BOE XFMM BCPWF FWFO �OE QMBDF�
��
$POUFOUT
4P JG ZPV BHSFF XJUI NF UIBU UIF SFMBUJWF QPQVMBSJUZ PG B QSPHSBNNJOH
MBOHVBHF NBUUFST� 1ZUIPO JT DMFBSMZ B HPPE DIPJDF�
8F %POφU /FFE :PV UP #F B $PNQVUFS 4DJFOUJTU
0OF PUIFS QPJOU * EP XBOU UP FNQIBTJT BT ZPV TUBSU UIJT KPVSOFZ PG
MFBSOJOH 1ZUIPO JT UIBU XF EPOυU OFFE ZPV UP CF B DPNQVUFS TDJFOUJTU�
*G UIBUυT ZPVS HPBM HSFBU� -FBSOJOH 1ZUIPO JT B QPXFSGVM TUFQ JO UIBU
EJSFDUJPO� #VU MFBSOJOH QSPHSBNNJOH JT PGUFO GSBNFE JO UIF TIBQF PG
ψXF IBWF BMM UIFTF EFWFMPQFS KPCT HPJOH VOнMMFE XF OFFE TPGUXBSF EF�
WFMPQFST�ω
5IBU NBZ PS NBZ OPU CF USVF� #VU NPSF JNQPSUBOUMZ GPS ZPV QSPHSBN�
NJOH FWFO B MJUUMF QSPHSBNNJOH DBO CF B TVQFSQPXFS GPS ZPV QFSTPO�
BMMZ�
��
$POUFOUT
5P JMMVTUSBUF UIJT JEFB TVQQPTF ZPV BSF B CJPMPHJTU� 4IPVME ZPV ESPQ
PVU PG CJPMPHZ BOE HFU B GSPOU�FOE XFC EFWFMPQFS KPC 1SPCBCMZ OPU�
#VU IBWJOH TLJMMT TVDI BT UIF POF * PQFOFE UIJT GPSFXPSE XJUI VTJOH
SFRVFTUT UP HFU EBUB GSPN UIF XFC XJMM CF JODSFEJCMF QPXFSGVM GPS ZPV
BT ZPV EP CJPMPHZ�
3BUIFS UIBO NBOVBMMZ FYQPSUJOH BOE TDSBQJOH EBUB GSPN UIF XFC PS
TQSFBETIFFUT XJUI 1ZUIPO ZPV DBO TDSBQF � ���υT PG EBUB TPVSDFT PS
TQSFBETIFFUT JO UIF UJNF JU UBLFT ZPV UP EP KVTU POF NBOVBMMZ� 1ZUIPO
TLJMMT DBO CF XIBU UBLFT ZPVS CJPMPHZ QPXFS BOE BNQMJнFT JU XFMM
CFZPOE ZPVS DPMMFBHVFTυ BOE NBLFT JU ZPVS TVQFSQPXFS�
%BO BOE 3FBM 1ZUIPO
'JOBMMZ MFU NF MFBWF ZPV XJUI B DPNNFOU PO ZPVS BVUIPST� %BO #BEFS
BMPOH XJUI UIF PUIFS 3FBM 1ZUIPO BVUIPST XPSL EBZ JO BOE PVU UP CSJOH
DMFBS BOE QPXFSGVM FYQMBOBUJPOT PG 1ZUIPO DPODFQUT UP BMM PG VT WJB
SFBMQZUIPO�DPN� 5IFZ IBWF B VOJRVF WJFX JOUP UIF 1ZUIPO FDPTZTUFN
BOE BSF LFZFE JOUP XIBU CFHJOOFST OFFE UP LOPX�
*υN DPOнEFOU MFBWJOH ZPV JO UIFJS IBOET PO UIJT 1ZUIPO KPVSOFZ� (P
GPSUI BOE MFBSO UIJT BNB[JOH MBOHVBHF VTJOH UIJT HSFBU CPPL� .PTU
JNQPSUBOUMZ SFNFNCFS UP IBWF GVO�
ρ.JDIBFM ,FOOFEZ 'PVOEFS PG 5BML 1ZUIPO !NLFOOFEZ
��
$IBQUFS �
*OUSPEVDUJPO
8FMDPNF UP 3FBM 1ZUIPOυT 1ZUIPO #BTJDT CPPL GVMMZ VQEBUFE GPS
1ZUIPO ���� *O UIJT CPPL ZPVυMM MFBSO SFBM�XPSME 1ZUIPO QSPHSBNNJOH
UFDIOJRVFT JMMVTUSBUFE XJUI VTFGVM BOE JOUFSFTUJOH FYBNQMFT�
8IFUIFS ZPVυSF OFX UP QSPHSBNNJOH PS B QSPGFTTJPOBM TPGUXBSF EFWFM�
PQFS MPPLJOH UP EJWF JOUP B OFX MBOHVBHF UIJT CPPL XJMM UFBDI ZPV BMM
PG UIF QSBDUJDBM 1ZUIPO UIBU ZPV OFFE UP HFU TUBSUFE PO QSPKFDUT PO ZPVS
PXO�
/P NBUUFS XIBU ZPVS VMUJNBUF HPBMT NBZ CF JG ZPV XPSL XJUI B DPN�
QVUFS BU BMM ZPV XJMM TPPO CF нOEJOH FOEMFTT XBZT UP JNQSPWF ZPVS MJGF
CZ BVUPNBUJOH UBTLT BOE TPMWJOH QSPCMFNT UISPVHI 1ZUIPO QSPHSBNT
UIBU ZPV DSFBUF�
#VUXIBUυT TP HSFBU BCPVU 1ZUIPO BT B QSPHSBNNJOH MBOHVBHF 1ZUIPO
JT PQFO�TPVSDF GSFFXBSF NFBOJOH ZPV DBO EPXOMPBE JU GPS GSFF BOEVTF
JU GPS BOZ QVSQPTF DPNNFSDJBM PS OPU�
1ZUIPO BMTP IBT BO BNB[JOH DPNNVOJUZ UIBU IBT CVJMU B OVNCFS PG
BEEJUJPOBM VTFGVM UPPMT ZPV DBO VTF JO ZPVS PXO QSPHSBNT� /FFE UP
XPSL XJUI 1%' EPDVNFOUT 5IFSFυT B DPNQSFIFOTJWF UPPM GPS UIBU�
8BOU UP DPMMFDU EBUB GSPN XFC QBHFT /P OFFE UP TUBSU GSPN TDSBUDI�
1ZUIPO XBT CVJMU UP CF FBTJFS UP VTF UIBO PUIFS QSPHSBNNJOH MBO�
��
���� 8IZ 5IJT #PPL
HVBHFT� *UυT VTVBMMZ NVDI FBTJFS UP SFBE 1ZUIPO DPEF BOE NVDI GBTUFS
UP XSJUF DPEF JO 1ZUIPO UIBO JO PUIFS MBOHVBHFT�
'PS JOTUBODF IFSFυT TPNF TJNQMF DPEFXSJUUFO JO$ BOPUIFS DPNNPOMZ
VTFE QSPHSBNNJOH MBOHVBHF�
#include <stdio.h>
int main(void)
{
printf("Hello, world\n");
}
"MM UIF QSPHSBN EPFT JT TIPX UIF UFYU Hello, world PO UIF TDSFFO� 5IBU
XBT B MPU PG XPSL UP PVUQVU POF QISBTF� )FSFυT UIF TBNF QSPHSBN
XSJUUFO JO 1ZUIPO�
print("Hello, world")
5IBUυT QSFUUZ TJNQMF SJHIU 5IF 1ZUIPO DPEF JT GBTUFS UP XSJUF BOE
FBTJFS UP SFBE� 8F нOE UIBU JU MPPLT GSJFOEMJFS BOENPSF BQQSPBDIBCMF
UPP�
"U UIF TBNF UJNF 1ZUIPO IBT BMM UIF GVODUJPOBMJUZ PG PUIFS MBOHVBHFT
BOE NPSF� :PV NJHIU CF TVSQSJTFE IPX NBOZ QSPGFTTJPOBM QSPEVDUT
BSF CVJMU PO 1ZUIPO DPEF� *OTUBHSBN :PV5VCF 3FEEJU 4QPUJGZ UP
OBNF KVTU B GFX�
/PU POMZ JT 1ZUIPO B GSJFOEMZ BOE GVO MBOHVBHF UP MFBSOρJU BMTP QPX�
FST UIF UFDIOPMPHZ CFIJOE NVMUJQMF XPSME�DMBTT DPNQBOJFT BOE PмFST
GBOUBTUJD DBSFFS PQQPSUVOJUJFT GPS BOZ QSPHSBNNFS XIP NBTUFST JU�
��� 8IZ 5IJT #PPL
-FUυT GBDF JU UIFSFυT BO PWFSXIFMNJOH BNPVOU PG JOGPSNBUJPO BCPVU
1ZUIPO PO UIF JOUFSOFU�
��
���� 8IZ 5IJT #PPL
#VU NBOZ CFHJOOFST XIP BSF TUVEZJOH PO UIFJS PXO IBWF USPVCMF нH�
VSJOH PVU XIBU UP MFBSO BOE JO XIBU PSEFS UP MFBSO JU�
:PVNBZ CF BTLJOH ZPVSTFMG ψ8IBU TIPVME * MFBSO BCPVU 1ZUIPO JO UIF
CFHJOOJOH UP HFU B TUSPOH GPVOEBUJPO ω *G TP UIJT CPPL JT GPS ZPVρ
XIFUIFS ZPVυSF B DPNQMFUF CFHJOOFS PS BMSFBEZ EBCCMFE JO 1ZUIPO PS
PUIFS MBOHVBHFT CFGPSF�
1ZUIPO #BTJDT JT XSJUUFO JO QMBJO &OHMJTI BOE CSFBLT EPXO UIF DPSF
DPODFQUT ZPV SFBMMZ OFFE UP LOPX JOUP CJUF�TJ[FE DIVOLT� 5IJT NFBOT
ZPVυMM LOPX ψFOPVHI UP CF EBOHFSPVTω XJUI 1ZUIPO GBTU�
*OTUFBE PG KVTU HPJOH UISPVHI B CPSJOH MJTU PG MBOHVBHF GFBUVSFT ZPVυMM
TFF FYBDUMZ IPX UIF EJмFSFOU CVJMEJOH CMPDLT нU UPHFUIFS BOE XIBUυT
JOWPMWFE JO CVJMEJOH SFBM BQQMJDBUJPOT BOE TDSJQUT XJUI 1ZUIPO�
4UFQ CZ TUFQ ZPVυMM NBTUFS GVOEBNFOUBM 1ZUIPO DPODFQUT UIBU XJMM IFMQ
ZPV HFU TUBSUFE PO ZPVS KPVSOFZ UP MFBSO 1ZUIPO�
.BOZ QSPHSBNNJOH CPPLT USZ UP DPWFS FWFSZ MBTU QPTTJCMF WBSJBUJPO
PG FWFSZ DPNNBOE XIJDI NBLFT JU FBTZ GPS SFBEFST UP HFU MPTU JO UIF
EFUBJMT� 5IJT BQQSPBDI JT HSFBU JG ZPVυSF MPPLJOH GPS B SFGFSFODFNBOVBM
CVU JUυT B IPSSJCMF XBZ UP MFBSO B QSPHSBNNJOH MBOHVBHF� /PU POMZ EP
ZPV TQFOE NPTU PG ZPVS UJNF DSBNNJOH UIJOHT JOUP ZPVS IFBE ZPVυMM
OFWFS VTF JU BMTP JTOυU BOZ GVO�
5IJT CPPL JT CVJMU PO UIF�����QSJODJQMF� 8FXJMM DPWFS UIF DPNNBOET
BOE UFDIOJRVFT VTFE JO UIF WBTU NBKPSJUZ PG DBTFT BOE GPDVT PO IPX UP
QSPHSBN SFBM�XPSME TPMVUJPOT UP QSPCMFNT UIBU XJMM IFMQ NBLF ZPVS
MJGF FBTJFS�
5IJT XBZ XF HVBSBOUFF UIBU ZPV XJMM�
ύ -FBSO VTFGVM QSPHSBNNJOH UFDIOJRVFT RVJDLMZ
ύ 4QFOE MFTT UJNF TUSVHHMJOH XJUI VOJNQPSUBOU DPNQMJDBUJPOT
ύ 'JOE NPSF QSBDUJDBM VTFT GPS 1ZUIPO JO ZPVS PXO MJGF
ύ )BWF NPSF GVO JO UIF QSPDFTT
��
���� "CPVU 3FBM 1ZUIPO
0ODF ZPVυWF NBTUFSFE UIF NBUFSJBM JO UIJT CPPL ZPV XJMM IBWF HBJOFE
B TUSPOH FOPVHI GPVOEBUJPO UIBU WFOUVSJOH PVU JOUP NPSF BEWBODFE
UFSSJUPSZ PO ZPVS PXO XJMM CF B CSFF[F�
4P EJWF JO� -FBSO UP QSPHSBN JO B XJEFMZ VTFE GSFF MBOHVBHF UIBU DBO
EP NPSF UIBO ZPV FWFS UIPVHIU XBT QPTTJCMF�
��� "CPVU 3FBM 1ZUIPO
"U 3FBM 1ZUIPO ZPVυMM MFBSO SFBM�XPSME QSPHSBNNJOH TLJMMT GSPN B
DPNNVOJUZ PG QSPGFTTJPOBM 1ZUIPOJTUBT GSPN BMM BSPVOE UIF XPSME�
5IF SFBMQZUIPO�DPN XFCTJUF MBVODIFE JO ���� BOE DVSSFOUMZ IFMQT
NPSF UIBO B NJMMJPO 1ZUIPO EFWFMPQFST FBDI NPOUI XJUI CPPLT
QSPHSBNNJOH UVUPSJBMT BOE PUIFS JO�EFQUI MFBSOJOH SFTPVSDFT�
&WFSZPOF XIP XPSLFE PO UIJT CPPL JT B 1ZUIPO QSBDUJUJPOFS SFDSVJUFE
GSPN UIF 3FBM 1ZUIPO UFBN XJUI TFWFSBM ZFBST PG QSPGFTTJPOBM FYQFSJ�
FODF JO UIF TPGUXBSF JOEVTUSZ�
)FSFυT XIFSF ZPV DBO нOE 3FBM 1ZUIPO PO UIF XFC�
ύ SFBMQZUIPO�DPN
ύ !SFBMQZUIPO PO 5XJUUFS
ύ 5IF 3FBM 1ZUIPO &NBJM /FXTMFUUFS
��� )PX UP 6TF 5IJT #PPL
5IF нSTU IBMG PG UIJT CPPL JT B RVJDL CVU UIPSPVHI PWFSWJFX PG BMM UIF
1ZUIPO GVOEBNFOUBMT� :PV EP OPU OFFE BOZ QSJPS FYQFSJFODF XJUI QSP�
HSBNNJOH UP HFU TUBSUFE� 5IF TFDPOE IBMG JT GPDVTFE PO нOEJOH QSBDUJ�
DBM TPMVUJPOT UP JOUFSFTUJOH SFBM�XPSME DPEJOH QSPCMFNT�
"T B CFHJOOFS XF SFDPNNFOE UIBU ZPV HP UISPVHI UIF нSTU IBMG PG
UIJT CPPL GSPN TUBSU UP FOE� 5IF TFDPOE IBMG DPWFST UPQJDT UIBU EPOυU
��
���� )PX UP 6TF 5IJT #PPL
PWFSMBQ BTNVDI TP ZPV DBO KVNQ BSPVOENPSF FBTJMZ CVU UIF DIBQUFST
EP JODSFBTF JO EJпDVMUZ BT ZPV HP BMPOH�
*G ZPV BSF B NPSF FYQFSJFODFE QSPHSBNNFS UIFO ZPV NBZ нOE ZPVS�
TFMG IFBEJOH UPXBSE UIF TFDPOE QBSU PG UIF CPPL SJHIU BXBZ� #VU EPOυU
OFHMFDU HFUUJOH B TUSPOH GPVOEBUJPO JO UIF CBTJDT нSTU BOE CF TVSF UP
нMM JO BOZ LOPXMFEHF HBQT BMPOH UIF XBZ�
.PTU TFDUJPOT XJUIJO B DIBQUFS BSF GPMMPXFE CZ SFWJFX FYFSDJTFT UP
IFMQ ZPVNBLF TVSF UIBU ZPVυWFNBTUFSFE BMM UIF UPQJDT DPWFSFE� 5IFSF
BSF BMTP B OVNCFS PG DPEF DIBMMFOHFT XIJDI BSF NPSF JOWPMWFE BOE
VTVBMMZ SFRVJSF ZPV UP UJF UPHFUIFS B OVNCFS PG EJмFSFOU DPODFQUT GSPN
QSFWJPVT DIBQUFST�
5IF QSBDUJDF нMFT UIBU BDDPNQBOZ UIJT CPPL BMTP JODMVEF GVMM TPMVUJPOT
UP UIF DIBMMFOHFT BT XFMM BT TPNF PG UIF USJDLJFS FYFSDJTFT� #VU UP HFU
UIFNPTU PVU PG UIFNBUFSJBM ZPV TIPVME USZ ZPVS CFTU UP TPMWF UIF DIBM�
MFOHF QSPCMFNT PO ZPVS PXO CFGPSF MPPLJOH BU UIF FYBNQMF TPMVUJPOT�
*G ZPVυSF DPNQMFUFMZ OFX UP QSPHSBNNJOH ZPV NBZ XBOU UP TVQQMF�
NFOU UIF нSTU GFX DIBQUFST XJUI BEEJUJPOBM QSBDUJDF� 8F SFDPNNFOE
XPSLJOH UISPVHI UIF 1ZUIPO 'VOEBNFOUBMT UVUPSJBMT BWBJMBCMF GPS GSFF
BU SFBMQZUIPO�DPN UP NBLF TVSF ZPV BSF PO TPMJE GPPUJOH�
*G ZPV IBWF BOZ RVFTUJPOT PS GFFECBDL BCPVU UIF CPPL ZPVυSF BMXBZT
XFMDPNF UP DPOUBDU VT EJSFDUMZ�
-FBSOJOH CZ %PJOH
5IJT CPPL JT BMM BCPVU MFBSOJOH CZ EPJOH TP CF TVSF UP BDUVBMMZ UZQF
JO UIF DPEF TOJQQFUT ZPV FODPVOUFS JO UIF CPPL� 'PS CFTU SFTVMUT XF
SFDPNNFOE UIBU ZPV BWPJE DPQZJOH BOE QBTUJOH UIF DPEF FYBNQMFT�
:PV XJMM MFBSO UIF DPODFQUT CFUUFS BOE QJDL VQ UIF TZOUBY GBTUFS JG ZPV
UZQF PVU FBDI MJOF PG DPEF ZPVSTFMG� 1MVT JG ZPV TDSFX VQρXIJDI JT UP�
UBMMZ OPSNBM BOEIBQQFOT UP BMM EFWFMPQFST PO BEBJMZ CBTJTρUIF TJNQMF
BDU PG DPSSFDUJOH UZQPT XJMM IFMQ ZPV MFBSO IPX UP EFCVH ZPVS DPEF�
��
���� #POVT .BUFSJBM � -FBSOJOH 3FTPVSDFT
5SZ UP DPNQMFUF UIF SFWJFX FYFSDJTFT BOE DPEF DIBMMFOHFT PO ZPVS PXO
CFGPSF HFUUJOH IFMQ GSPNPVUTJEF SFTPVSDFT� 8JUI FOPVHI QSBDUJDF ZPV
XJMM NBTUFS UIJT NBUFSJBMρBOE IBWF GVO BMPOH UIF XBZ�
)PX -POH8JMM *U 5BLF UP 'JOJTI 5IJT #PPL
*G ZPVυSF BMSFBEZ GBNJMJBS XJUI B QSPHSBNNJOH MBOHVBHF ZPV DPVME нO�
JTI UIF CPPL JO BT MJUUMF BT �� UP �� IPVST� *G ZPVυSF OFX UP QSPHSBN�
NJOH ZPVNBZ OFFE UP TQFOE VQ UP ��� IPVST PS NPSF� 5BLF ZPVS UJNF
BOE EPOυU GFFM MJLF ZPV IBWF UP SVTI� 1SPHSBNNJOH JT B TVQFS SFXBSE�
JOH CVU DPNQMFY TLJMM UP MFBSO� (PPE MVDL PO ZPVS 1ZUIPO KPVSOFZ
XFυSF SPPUJOH GPS ZPV�
��� #POVT .BUFSJBM � -FBSOJOH
3FTPVSDFT
0OMJOF 3FTPVSDFT
5IJT CPPL DPNFT XJUI B OVNCFS PG GSFF CPOVT SFTPVSDFT UIBU ZPV DBO
BDDFTT BU SFBMQZUIPO�DPN�QZUIPO�CBTJDT�SFTPVSDFT� 0O UIJT XFC QBHF
ZPV DBO BMTP нOE BO FSSBUB MJTU XJUI DPSSFDUJPOTNBJOUBJOFE CZ UIF3FBM
1ZUIPO UFBN�
*OUFSBDUJWF 2VJ[[FT
.PTU DIBQUFST JO UIJT CPPL DPNF XJUI B GSFF POMJOF RVJ[ UP DIFDL ZPVS
MFBSOJOH QSPHSFTT� :PV DBO BDDFTT UIF RVJ[[FT VTJOH UIF MJOLT QSPWJEFE
BU UIF FOE PG UIF DIBQUFS� 5IF RVJ[[FT BSF IPTUFE PO UIF 3FBM 1ZUIPO
XFCTJUF BOE DBO CF WJFXFE PO ZPVS QIPOF PS DPNQVUFS�
&BDI RVJ[ UBLFT ZPV UISPVHI B TFSJFT PG RVFTUJPOT SFMBUFE UP B QBSUJDV�
MBS DIBQUFS JO UIF CPPL� 4PNF PG UIFN BSF NVMUJQMF DIPJDF TPNF XJMM
BTL ZPV UP UZQF JO BO BOTXFS BOE TPNFXJMM SFRVJSF ZPV UP XSJUF BDUVBM
1ZUIPO DPEF� "T ZPV NBLF ZPVS XBZ UISPVHI FBDI RVJ[ JU LFFQT TDPSF
PG XIJDI RVFTUJPOT ZPV BOTXFSFE DPSSFDUMZ�
��
���� #POVT .BUFSJBM � -FBSOJOH 3FTPVSDFT
"U UIF FOE PG UIF RVJ[ ZPV SFDFJWF B HSBEF CBTFE PO ZPVS SFTVMU� *G
ZPV EPOυU TDPSF ���� PO ZPVS нSTU USZρEPOυU GSFU� 5IFTF RVJ[[FT BSF
NFBOU UP DIBMMFOHF ZPV BOE JUυT FYQFDUFE UIBU ZPV HP UISPVHI UIFN
TFWFSBM UJNFT JNQSPWJOH ZPVS TDPSF XJUI FBDI SVO�
&YFSDJTFT $PEF 3FQPTJUPSZ
5IJT CPPL IBT BO BDDPNQBOZJOH DPEF SFQPTJUPSZ PO UIF XFC DPOUBJO�
JOH FYBNQMF TPVSDF DPEF BT XFMM BT UIF BOTXFST UP FYFSDJTFT BOE DPEF
DIBMMFOHFT� 5IF SFQPTJUPSZ JT CSPLFO VQ CZ DIBQUFS TP ZPV DBO DIFDL
ZPVS DPEF BHBJOTU UIF TPMVUJPOT QSPWJEFE CZ VT BGUFS ZPV нOJTI FBDI
DIBQUFS� )FSFυT UIF MJOL�
SFBMQZUIPO�DPN�QZUIPO�CBTJDT�FYFSDJTFT
&YBNQMF $PEF -JDFOTF
5IF FYBNQMF 1ZUIPO TDSJQUT BTTPDJBUFE XJUI UIJT CPPL BSF MJDFOTFE VO�
EFS B $SFBUJWF $PNNPOT 1VCMJD %PNBJO $$� -JDFOTF� 5IJT NFBOT
UIBU ZPVυSF XFMDPNF UP VTF BOZ QPSUJPO PG UIF DPEF GPS BOZ QVSQPTF JO
ZPVS PXO QSPHSBNT�
/PUF
5IF DPEF GPVOE JO UIJT CPPL IBT CFFO UFTUFE XJUI 1ZUIPO ���
BOE 1ZUIPO ��� PO 8JOEPXT NBD04 BOE -JOVY�
'PSNBUUJOH $POWFOUJPOT
$PEF CMPDLT XJMM CF VTFE UP QSFTFOU FYBNQMF DPEF�
# This is Python code:
print("Hello world!")
5FSNJOBM DPNNBOET GPMMPX UIF 6OJY GPSNBU�
��
���� #POVT .BUFSJBM � -FBSOJOH 3FTPVSDFT
$ # This is a terminal command:
$ python hello-world.py
%PMMBS TJHOT BSF OPU QBSU PG UIF DPNNBOE�
*UBMJD UFYU XJMM CF VTFE UP EFOPUF B нMF OBNF� IFMMP�XPSME�QZ�
#PME UFYU XJMM CF VTFE UP EFOPUF B OFX PS JNQPSUBOU UFSN�
/PUFT BOE 8BSOJOH CPYFT BQQFBS BT GPMMPXT�
/PUF
5IJT JT B OPUF нMMFE JO XJUI QMBDFIPMEFS UFYU� 5IF RVJDL CSPXO
GPY KVNQT PWFS UIF MB[Z EPH� 5IF RVJDL CSPXO 1ZUIPO TMJUIFST
PWFS UIF MB[Z IPH�
8BSOJOH
5IJT JT B XBSOJOH BMTP нMMFE JO XJUI QMBDFIPMEFS UFYU� 5IF RVJDL
CSPXO GPY KVNQT PWFS UIF MB[Z EPH� 5IF RVJDL CSPXO 1ZUIPO
TMJUIFST PWFS UIF MB[Z IPH�
'FFECBDL � &SSBUB
8F XFMDPNF JEFBT TVHHFTUJPOT GFFECBDL BOE UIF PDDBTJPOBM SBOU�
%JE ZPV нOE B UPQJD DPOGVTJOH %JE ZPV нOE BO FSSPS JO UIF UFYU PS
DPEF %JE XF MFBWF PVU B UPQJD ZPV XPVME MPWF UP LOPX NPSF BCPVU
8FυSF BMXBZT MPPLJOH UP JNQSPWF PVS UFBDIJOH NBUFSJBMT� 8IBUFWFS
UIF SFBTPO QMFBTF TFOE JO ZPVS GFFECBDL BU UIF MJOL CFMPX�
SFBMQZUIPO�DPN�QZUIPO�CBTJDT�GFFECBDL
-FBWF GFFECBDL PO UIJT TFDUJPO |
��
$IBQUFS �
4FUUJOH 6Q 1ZUIPO
5IJT CPPL JT BCPVU QSPHSBNNJOH DPNQVUFST XJUI 1ZUIPO� :PV DPVME
SFBE UIJT CPPL DPWFS�UP�DPWFS BOE BCTPSC UIF JOGPSNBUJPO XJUIPVU
FWFS UPVDIJOH B LFZCPBSE CVU ZPVυE NJTT PVU PO UIF GVO QBSUρDPEJOH�
5P HFU UIF NPTU PVU PG UIJT CPPL ZPV OFFE UP IBWF B DPNQVUFS XJUI
1ZUIPO JOTUBMMFE PO JU BOE B XBZ UP DSFBUF FEJU BOE TBWF 1ZUIPO DPEF
нMFT�
*O UIJT DIBQUFS ZPV XJMM MFBSO IPX UP�
ύ *OTUBMM UIF MBUFTU WFSTJPO PG 1ZUIPO � PO ZPVS DPNQVUFS
ύ 0QFO *%-& 1ZUIPOυT CVJMU�JO *OUFHSBUFE %FWFMPQNFOU BOE
-FBSOJOH &OWJSPONFOU
��
/PUF
&WFO JG ZPV BMSFBEZ IBWF 1ZUIPO ��� JOTUBMMFE JU JT TUJMM B HPPE
JEFB UP TLJN UIJT DIBQUFS UP EPVCMF DIFDL UIBU ZPVS FOWJSPONFOU
JT TFU�VQ GPS GPMMPXJOH BMPOH XJUI UIJT CPPL�
5ISPVHIPVU UIJT CPPL *%-& XJMM CF VTFE UP DSFBUF BOE NPEJGZ
1ZUIPO DPEF нMFT� *G ZPV IBWF B EJмFSFOU QSFGFSSFE DPEF FEJUPS
UIFO ZPV NBZ GPMMPX BMPOH XJUI UIF FYBNQMFT VTJOH UIBU FEJUPS�
+VTU LOPX UIBU TPNF TFDUJPOT QBSUJDVMBSMZ UIFNBUFSJBM DPWFSFE
JO $IBQUFS � XJMM OPU BQQMZ UP DPEF FEJUPST PUIFS UIBO *%-&�
.BOZ PQFSBUJOH TZTUFNT TVDI BT NBD04 BOE -JOVY DPNF XJUI
1ZUIPO QSF�JOTUBMMFE� 5IF WFSTJPO PG 1ZUIPO UIBU DPNFT XJUI ZPVS
PQFSBUJOH TZTUFN JT DBMMFE ZPVS TZTUFN 1ZUIPO�
5IF TZTUFN 1ZUIPO JT BMNPTU BMXBZT PVU�PG�EBUF BOENBZ OPU FWFO CF
B GVMM 1ZUIPO JOTUBMMBUJPO� *UυT FTTFOUJBM UIBU ZPV IBWF UIF NPTU SFDFOU
WFSTJPO PG 1ZUIPO TP UIBU ZPV DBO GPMMPX BMPOH TVDDFTTGVMMZ XJUI UIF
FYBNQMFT JO UIJT CPPL�
5IFSF BSF UXP NBKPS WFSTJPOT PG 1ZUIPO BWBJMBCMF� 1ZUIPO � BMTP
LOPXO BT MFHBDZ 1ZUIPO BOE 1ZUIPO �� 1ZUIPO � XBT SFMFBTFE JO UIF
ZFBS ���� BOE XJMM SFBDI JUT FOE�PG�MJGF PO +BOVBSZ � ����� 5IJT
CPPL GPDVTFT FYDMVTJWFMZ PO 1ZUIPO ��
5IF DIBQUFS JT TQMJU JOUP UISFF TFDUJPOT� 8JOEPXT NBD04 BOE -JOVY�
+VTU нOE UIF TFDUJPO GPS ZPVS PQFSBUJOH TZTUFN BOE GPMMPX UIF TUFQT UP
HFU ZPVS DPNQVUFS TFU�VQ UIFO TLJQ BIFBE UP UIF OFYU DIBQUFS�
*G ZPV IBWF B EJмFSFOU PQFSBUJOH TZTUFN DIFDL PVU UIF 1ZUIPO � *O�
TUBMMBUJPO � 4FUVQ (VJEF NBJOUBJOFE PO SFBMQZUIPO�DPN UP TFF JG ZPVS
04 JT DPWFSFE�
-FUυT EJH JO�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��
���� 8JOEPXT
��� 8JOEPXT
'PMMPX UIFTF TUFQT UP JOTUBMM 1ZUIPO � BOE PQFO *%-& PO 8JOEPXT�
*OTUBMM 1ZUIPO
8JOEPXT TZTUFNT EP OPU UZQJDBMMZ TIJQXJUI 1ZUIPO QSF�JOTUBMMFE� 'PS�
UVOBUFMZ JOTUBMMBUJPO EPFT OPU JOWPMWF NVDI NPSF UIBO EPXOMPBEJOH
UIF 1ZUIPO JOTUBMMFS GSPN UIF QZUIPO�PSH XFCTJUF BOE SVOOJOH JU�
4UFQ �� %PXOMPBE UIF 1ZUIPO � *OTUBMMFS
0QFO B CSPXTFS XJOEPX BOE OBWJHBUF UP UIF EPXOMPBE QBHF GPS 8JO�
EPXT BU QZUIPO�PSH�
6OEFSOFBUI UIF IFBEJOH BU UIF UPQ UIBU TBZT 1ZUIPO 3FMFBTFT GPS 8JO�
EPXT DMJDL PO UIF MJOL GPS UIF -BUFTU 1ZUIPO � 3FMFBTF � 1ZUIPO ��Y�Y�
"T PG UIJT XSJUJOH UIF MBUFTU WFSTJPO JT 1ZUIPO ���� 5IFO TDSPMM UP UIF
CPUUPN BOE TFMFDU 8JOEPXT Y����� FYFDVUBCMF JOTUBMMFS�
/PUF
*G ZPVS TZTUFN IBT B ���CJU QSPDFTTPS UIFO ZPV TIPVME DIPPTF
UIF ���CJU JOTUBMMFS� *G ZPV BSFOυU TVSF JG ZPVS DPNQVUFS JT ���CJU
PS ���CJU TUJDL XJUI UIF ���CJU JOTUBMMFS NFOUJPOFE BCPWF�
4UFQ �� 3VO UIF *OTUBMMFS
3VO UIF JOTUBMMFS CZ EPVCMF�DMJDLJOH PO UIF EPXOMPBEFE нMF� :PV
TIPVME TFF UIF GPMMPXJOH XJOEPX�
��
���� 8JOEPXT
8BSOJOH
.BLF TVSF ZPV DIFDL UIF CPY UIBU TBZT "EE 1ZUIPO ��Y UP 1"5)
BT TIPXO UP FOTVSF UIBU UIF JOTUBMM QMBDFT UIF JOUFSQSFUFS JO ZPVS
FYFDVUJPO QBUI�
$MJDL *OTUBMM /PX UP JOTUBMM 1ZUIPO �� 8BJU GPS UIF JOTUBMMBUJPO UP нOJTI
BOE UIFO DPOUJOVF UP PQFO *%-&�
0QFO *%-&
:PV DBO PQFO *%-& JO UXP TUFQT�
�� $MJDL PO UIF TUBSU NFOV BOE MPDBUF UIF 1ZUIPO ��� GPMEFS�
�� 0QFO UIF GPMEFS BOE TFMFDU *%-& 1ZUIPO ����
*%-& PQFOT B 1ZUIPO TIFMM JO B OFX XJOEPX� 5IF 1ZUIPO TIFMM JT
BO JOUFSBDUJWF FOWJSPONFOU UIBU BMMPXT ZPV UP UZQF JO TPNF 1ZUIPO
DPEF BOE FYFDVUF JU JNNFEJBUFMZ� *U JT B HSFBU XBZ UP HFU TUBSUFE XJUI
1ZUIPO�
5IF 1ZUIPO TIFMM XJOEPX MPPLT MJLF UIJT�
��
���� 8JOEPXT
"U UIF UPQ PG UIF XJOEPX ZPV DBO TFF UIF WFSTJPO PG 1ZUIPO UIBU JT
SVOOJOH BOE TPNF JOGPSNBUJPO BCPVU UIF PQFSBUJOH TZTUFN� *G ZPV
TFF B WFSTJPO MFTT UIBO ��� ZPV NBZ OFFE UP SFWJTJU UIF JOTUBMMBUJPO
JOTUSVDUJPOT JO UIF QSFWJPVT TFDUJPO�
5IF >>> TZNCPM UIBU ZPV TFF JT DBMMFE B QSPNQU� 8IFOFWFS ZPV TFF
UIJT JU NFBOT UIBU 1ZUIPO JT XBJUJOH GPS ZPV UP HJWF JU TPNF JOTUSVD�
UJPOT�
*OUFSBDUJWF 2VJ[
5IJT DIBQUFS DPNFT XJUI B GSFF POMJOF RVJ[ UP DIFDL ZPVS MFBSO�
JOH QSPHSFTT� :PV DBO BDDFTT UIF RVJ[ VTJOH ZPVS QIPOF PS DPN�
QVUFS BU UIF GPMMPXJOH XFC BEESFTT�
SFBMQZUIPO�DPN�RVJ[[FT�QZUIPO�CBTJDT��
/PX UIBU ZPV IBWF 1ZUIPO JOTUBMMFE MFUυT HFU TUSBJHIU JOUP XSJUJOH ZPVS
нSTU 1ZUIPO QSPHSBN� (P BIFBE BOE NPWF PO UP $IBQUFS ��
-FBWF GFFECBDL PO UIJT TFDUJPO |
��
���� NBD04
��� NBD04
'PMMPX UIFTF TUFQT UP JOTUBMM 1ZUIPO � BOE PQFO *%-& PO NBD04�
/PUF
.BOZ SFTPVSDFT SFDPNNFOE JOTUBMMJOH 1ZUIPO � PONBD04XJUI
UIF )PNFCSFX QBDLBHF NBOBHFS� $PNNVOJUZ HVJEFT MJLF 5IF
)JUDIIJLFSυT (VJEF UP 1ZUIPO BMTP SFDPNNFOE UIJT BQQSPBDI
BT EPFT 3FBM 1ZUIPOυT 1ZUIPO � *OTUBMMBUJPO � 4FUVQ (VJEF�
)PNFCSFX JT VTFGVM GPS JOTUBMMJOH QBDLBHFT GPS NBD04 JODMVE�
JOH 1ZUIPO GSPN UIF UFSNJOBM� 8IJMF )PNFCSFX JT TPNFUIJOH
ZPV NBZ XBOU UP MFBSO UP VTF UIF QSPDFTT PG HFUUJOH )PNFCSFX
JOTUBMMFE BOE VTJOH JU UP JOTUBMM 1ZUIPO DBO CF EBVOUJOH GPS B CF�
HJOOFS�
*G ZPV BSF JOUFSFTUFE JO VTJOH )PNFCSFX DIFDL PVU UIF 1ZUIPO
� *OTUBMMBUJPO � 4FUVQ (VJEF GPS TUFQ�CZ�TUFQ JOTUSVDUJPOT�
*OTUBMM 1ZUIPO
.PTU NBD04 NBDIJOFT DPNF XJUI 1ZUIPO � JOTUBMMFE� :PVυMM XBOU UP
JOTUBMM UIF MBUFTU WFSTJPO PG 1ZUIPO �� :PV DBO EP UIJT CZ EPXOMPBEJOH
BO JOTUBMMFS GSPN UIF QZUIPO�PSH XFCTJUF�
4UFQ �� %PXOMPBE UIF 1ZUIPO � *OTUBMMFS
0QFO BCSPXTFSXJOEPXBOEOBWJHBUF UP UIF EPXOMPBEQBHF GPSNBD04
BU QZUIPO�PSH�
6OEFSOFBUI UIF IFBEJOH BU UIF UPQ UIBU TBZT 1ZUIPO 3FMFBTFT GPS
NBD04 DMJDL PO UIF MJOL GPS UIF -BUFTU 1ZUIPO � 3FMFBTF � 1ZUIPO
��Y�Y� "T PG UIJT XSJUJOH UIF MBUFTU WFSTJPO JT 1ZUIPO ���� 5IFO TDSPMM
UP UIF CPUUPN PG UIF QBHF BOE TFMFDU NBD04 ���CJU����CJU JOTUBMMFS�
5IJT TUBSUT UIF EPXOMPBE�
��
���� NBD04
4UFQ �� 3VO UIF *OTUBMMFS
3VO UIF JOTUBMMFS CZ EPVCMF�DMJDLJOH PO UIF EPXOMPBEFE нMF� :PV
TIPVME TFF UIF GPMMPXJOH XJOEPX�
�� 1SFTT UIF $POUJOVF CVUUPO B GFX UJNFT VOUJM ZPV BSF BTLFE UP BHSFF
UP UIF TPGUXBSF MJDFOTF BHSFFNFOU� 5IFO DMJDL "HSFF� :PV BSF
TIPXO B XJOEPX UIBU UFMMT ZPV XIFSF 1ZUIPO XJMM CF JOTUBMMFE BOE
IPX NVDI TQBDF JU XJMM UBLF�
�� :PV NPTU MJLFMZ EPOυU XBOU UP DIBOHF UIF EFGBVMU MPDBUJPO TP HP
BIFBE BOE DMJDL *OTUBMM UP TUBSU UIF JOTUBMMBUJPO� 5IF 1ZUIPO JO�
TUBMMFS XJMM UFMM ZPV XIFO JU JT нOJTIFE DPQZJOH нMFT�
�� $MJDL $MPTF UP DMPTF UIF JOTUBMMFS XJOEPX� /PX UIBU 1ZUIPO JT JO�
TUBMMFE ZPV DBO PQFO VQ *%-& BOE HFU SFBEZ UP XSJUF ZPVS нSTU
1ZUIPO QSPHSBN�
0QFO *%-&
:PV DBO PQFO *%-& JO UISFF TUFQT�
��
���� NBD04
�� 0QFO 'JOEFS BOE DMJDL PO "QQMJDBUJPOT�
�� -PDBUF UIF 1ZUIPO ��� GPMEFS BOE EPVCMF�DMJDL PO JU�
�� %PVCMF�DMJDL PO UIF *%-& JDPO�
*%-& PQFOT B 1ZUIPO TIFMM JO B OFX XJOEPX� 5IF 1ZUIPO TIFMM JT
BO JOUFSBDUJWF FOWJSPONFOU UIBU BMMPXT ZPV UP UZQF JO TPNF 1ZUIPO
DPEF BOE FYFDVUF JU JNNFEJBUFMZ� *U JT B HSFBU XBZ UP HFU TUBSUFE XJUI
1ZUIPO�
/PUF
5P PQFO *%-& FWFONPSF RVJDLMZ QSFTT Cmd+Spacebar UP PQFO UIF
4QPUMJHIU TFBSDI UZQF UIF XPSE idle BOE QSFTT Return�
5IF 1ZUIPO TIFMM XJOEPX MPPLT MJLF UIJT�
"U UIF UPQ PG UIF XJOEPX ZPV DBO TFF UIF WFSTJPO PG 1ZUIPO UIBU JT
SVOOJOH BOE TPNF JOGPSNBUJPO BCPVU UIF PQFSBUJOH TZTUFN� *G ZPV
TFF B WFSTJPO MFTT UIBO ��� ZPV NBZ OFFE UP SFWJTJU UIF JOTUBMMBUJPO
JOTUSVDUJPOT JO UIF QSFWJPVT TFDUJPO�
��
���� 6CVOUV -JOVY
5IF >>> TZNCPM UIBU ZPV TFF JT DBMMFE B QSPNQU� 8IFOFWFS ZPV TFF
UIJT JU NFBOT UIBU 1ZUIPO JT XBJUJOH GPS ZPV UP HJWF JU TPNF JOTUSVD�
UJPOT�
*OUFSBDUJWF 2VJ[
5IJT DIBQUFS DPNFT XJUI B GSFF POMJOF RVJ[ UP DIFDL ZPVS MFBSO�
JOH QSPHSFTT� :PV DBO BDDFTT UIF RVJ[ VTJOH ZPVS QIPOF PS DPN�
QVUFS BU UIF GPMMPXJOH XFC BEESFTT�
SFBMQZUIPO�DPN�RVJ[[FT�QZUIPO�CBTJDT��
/PX UIBU ZPV IBWF 1ZUIPO JOTUBMMFE MFUυT HFU TUSBJHIU JOUP XSJUJOH ZPVS
нSTU 1ZUIPO QSPHSBN� (P BIFBE BOE NPWF PO UP $IBQUFS ��
-FBWF GFFECBDL PO UIJT TFDUJPO |
��� 6CVOUV -JOVY
'PMMPX UIFTF TUFQT UP JOTUBMM 1ZUIPO � BOE PQFO *%-& PO 6CVOUV
-JOVY�
*OTUBMM 1ZUIPO
5IFSF JT B HPPE DIBODF ZPVS 6CVOUV EJTUSJCVUJPO IBT 1ZUIPO JOTUBMMFE
BMSFBEZ CVU JU QSPCBCMZ XPOυU CF UIF MBUFTU WFSTJPO BOE JU NBZ CF
1ZUIPO � JOTUFBE PG 1ZUIPO ��
5P нOE PVU XIBU WFSTJPOT ZPV IBWF PQFO B UFSNJOBM XJOEPX BOE USZ
UIF GPMMPXJOH DPNNBOET�
$ python --version
$ python3 --version
0OF PS NPSF PG UIFTF DPNNBOET TIPVME SFTQPOE XJUI B WFSTJPO BT
CFMPX ZPVS WFSTJPO OVNCFS NBZ WBSZ�
��
���� 6CVOUV -JOVY
$ python3 --version
Python 3.7.2
*G UIF WFSTJPO TIPXO JT 1ZUIPO ��Y PS B WFSTJPO PG 1ZUIPO � UIBU JT
MFTT UIBO ��� UIFO ZPV XBOU UP JOTUBMM UIF MBUFTU WFSTJPO� )PX ZPV
JOTUBMM 1ZUIPO PO 6CVOUV EFQFOET PO XIJDI WFSTJPO PG 6CVOUV ZPV
BSF SVOOJOH� :PV DBO EFUFSNJOF ZPVS MPDBM 6CVOUV WFSTJPO CZ SVOOJOH
UIF GPMMPXJOH DPNNBOE�
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.1 LTS
Release: 18.04
Codename: bionic
-PPL BU UIF WFSTJPO OVNCFS OFYU UP Release JO UIF DPOTPMF PVUQVU BOE
GPMMPX UIF DPSSFTQPOEJOH JOTUSVDUJPOT CFMPX�
ύ 6CVOUV ������ EP OPU DPNF XJUI 1ZUIPO ��� CZ EFGBVMU CVU JU JT
JO UIF 6OJWFSTF SFQPTJUPSZ� :PV TIPVME CF BCMF UP JOTUBMM JU XJUI UIF
GPMMPXJOH DPNNBOET�
$ sudo apt-get update
$ sudo apt-get install python3.7 idle-python3.7
ύ *G ZPV BSF VTJOH 6CVOUV �� BOE MPXFS 1ZUIPO ��� JT OPU JO UIF
6OJWFSTF SFQPTJUPSZ BOE ZPV OFFE UP HFU JU GSPN B 1FSTPOBM 1BDL�
BHF "SDIJWF 11"� 5P JOTUBMM 1ZUIPO GSPN UIF ψEFBETOBLFTω 11"
EP UIF GPMMPXJOH�
$ sudo add-apt-repository ppa:deadsnakes/ppa
$ sudo apt-get update
$ sudo apt-get install python3.7 idle-python3.7
:PV DBO DIFDL UIBU UIF DPSSFDU WFSTJPO PG 1ZUIPO XBT JOTUBMMFE CZ SVO�
OJOH python3 --version� *G ZPV TFF B WFSTJPO OVNCFS MFTT UIBO 3.7 ZPV
��
���� 6CVOUV -JOVY
NBZ OFFE UP UZQF python3.7 --version� /PX ZPV BSF SFBEZ UP PQFO *%-&
BOE HFU SFBEZ UP XSJUF ZPVS нSTU 1ZUIPO QSPHSBN�
0QFO *%-&
0O NBOZ -JOVY JOTUBMMBUJPOT ZPV DBO PQFO *%-& GSPN UIF DPNNBOE
MJOF CZ UZQJOH�
$ idle3
*%-& PQFOT B 1ZUIPO TIFMM JO B OFX XJOEPX� 5IF 1ZUIPO TIFMM JT
BO JOUFSBDUJWF FOWJSPONFOU UIBU BMMPXT ZPV UP UZQF JO TPNF 1ZUIPO
DPEF BOE FYFDVUF JU JNNFEJBUFMZ� *U JT B HSFBU XBZ UP HFU TUBSUFE XJUI
1ZUIPO�
5IF 1ZUIPO TIFMM XJOEPX MPPLT MJLF UIJT�
"U UIF UPQ PG UIF XJOEPX ZPV DBO TFF UIF WFSTJPO PG 1ZUIPO UIBU JT
SVOOJOH BOE TPNF JOGPSNBUJPO BCPVU UIF PQFSBUJOH TZTUFN� *G ZPV
��
���� 6CVOUV -JOVY
TFF B WFSTJPO MFTT UIBO ��� ZPV NBZ OFFE UP SFWJTJU UIF JOTUBMMBUJPO
JOTUSVDUJPOT JO UIF QSFWJPVT TFDUJPO�
8BSOJOH
*G ZPV TFF B WFSTJPO PUIFS UIBO 3.7 PS JG UIF idle3 DPNNBOE EPFT
OPU XPSL ZPV NBZ OFFE UP PQFO *%-& XJUI UIF GPMMPXJOH DPN�
NBOE�
$ idle-python3.7
5IF >>> TZNCPM UIBU ZPV TFF JT DBMMFE B QSPNQU� 8IFOFWFS ZPV TFF
UIJT JU NFBOT UIBU 1ZUIPO JT XBJUJOH GPS ZPV UP HJWF JU TPNF JOTUSVD�
UJPOT�
*OUFSBDUJWF 2VJ[
5IJT DIBQUFS DPNFT XJUI B GSFF POMJOF RVJ[ UP DIFDL ZPVS MFBSO�
JOH QSPHSFTT� :PV DBO BDDFTT UIF RVJ[ VTJOH ZPVS QIPOF PS DPN�
QVUFS BU UIF GPMMPXJOH XFC BEESFTT�
SFBMQZUIPO�DPN�RVJ[[FT�QZUIPO�CBTJDT��
/PX UIBU ZPV IBWF 1ZUIPO JOTUBMMFE MFUυT HFU TUSBJHIU JOUP XSJUJOH ZPVS
нSTU 1ZUIPO QSPHSBN� (P BIFBE BOE NPWF PO UP $IBQUFS ��
-FBWF GFFECBDL PO UIJT TFDUJPO |
��
$IBQUFS �
:PVS 'JSTU 1ZUIPO 1SPHSBN
/PX UIBU ZPV IBWF UIF MBUFTU WFSTJPO PG 1ZUIPO JOTUBMMFE PO ZPVS DPN�
QVUFS JUυT UJNF UP TUBSU DPEJOH�
*O UIJT DIBQUFS ZPV XJMM�
ύ 8SJUF ZPVS нSTU 1ZUIPO TDSJQU
ύ -FBSO XIBU IBQQFOT XIFO ZPV SVO B TDSJQU XJUI BO FSSPS
ύ -FBSO IPX UP EFDMBSF B WBSJBCMF BOE JOTQFDU JUT WBMVF
ύ -FBSO IPX UP XSJUF DPNNFOUT
3FBEZ UP CFHJO ZPVS 1ZUIPO KPVSOFZ -FUυT HP�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��� 8SJUF B 1ZUIPO 4DSJQU
*G ZPV EPOυU IBWF *%-& PQFO BMSFBEZ HP BIFBE BOE PQFO JU� 5IFSF BSF
UXP NBJO XJOEPXT UIBU ZPV XJMM XPSL XJUI JO *%-&� UIF JOUFSBDUJWF
XJOEPX XIJDI JT UIF POF UIBU PQFOT XIFO ZPV TUBSU *%-& BOE UIF
TDSJQU XJOEPX�
:PV DBO UZQF DPEF JOUP CPUI UIF JOUFSBDUJWF BOE TDSJQU XJOEPXT� 5IF
EJмFSFODF CFUXFFO UIF UXP JT IPX UIF DPEF JT FYFDVUFE� *O UIJT TFDUJPO
��
���� 8SJUF B 1ZUIPO 4DSJQU
ZPV XJMM XSJUF ZPVS нSTU 1ZUIPO QSPHSBN BOE MFBSO IPX UP SVO JU JO
CPUI XJOEPXT�
5IF *OUFSBDUJWF 8JOEPX
5IF JOUFSBDUJWF XJOEPX DPOUBJOT B 1ZUIPO TIFMM XIJDI JT B UFYUVBM
VTFS JOUFSGBDF VTFE UP JOUFSBDU XJUI UIF 1ZUIPO MBOHVBHF� )FODF UIF
OBNF ψJOUFSBDUJWF XJOEPX�ω
8IFO ZPV нSTU PQFO *%-& UIF UFYU EJTQMBZFE MPPLT TPNFUIJOH MJLF
UIJT�
Python 3.7.2 (default, Dec 25 2018, 03:50:46)
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license()" for more information.
>>>
5IF нSTU MJOF UFMMT ZPV XIBU WFSTJPO PG 1ZUIPO JT SVOOJOH� *O UIJT DBTF
*%-& JT SVOOJOH 1ZUIPO ������ 5IF TFDPOE BOE UIJSE MJOFT HJWF TPNF
JOGPSNBUJPO BCPVU UIF PQFSBUJOH TZTUFN BOE TPNF DPNNBOET ZPV DBO
VTF UP HFU NPSF JOGPSNBUJPO BCPVU 1ZUIPO�
5IF >>> TZNCPM JO UIF MBTU MJOF JT DBMMFE UIF QSPNQU� 5IJT JT XIFSF
ZPV XJMM UZQF JO ZPVS DPEF� (P BIFBE BOE UZQF 1 + 1 BU UIF QSPNQU BOE
QSFTT Enter�
8IFO ZPV IJU Enter 1ZUIPO FWBMVBUFT UIF FYQSFTTJPO EJTQMBZT UIF SF�
TVMU 2 BOE UIFO QSPNQUT ZPV GPS NPSF JOQVU�
>>> 1 + 1
2
>>>
/PUJDF UIBU UIF 1ZUIPO QSPNQU >>> BQQFBST BHBJO BGUFS ZPVS SFTVMU�
1ZUIPO JT SFBEZ GPS NPSF JOTUSVDUJPOT� &WFSZ UJNF ZPV SVO TPNF DPEF
B OFX QSPNQU BQQFBST EJSFDUMZ CFMPX UIF PVUQVU�
��
���� 8SJUF B 1ZUIPO 4DSJQU
5IF TFRVFODF PG FWFOUT JO UIF JOUFSBDUJWF XJOEPX DBO CF EFTDSJCFE BT
B MPPQ XJUI UISFF TUFQT�
�� 'JSTU 1ZUIPO SFBET UIF DPEF FOUFSFE BU UIF QSPNQU�
�� 5IFO UIF DPEF JT FWBMVBUFE�
�� 'JOBMMZ UIF PVUQVU JT QSJOUFE JO UIF XJOEPX BOE B OFX QSPNQU JT
EJTQMBZFE�
5IJT MPPQ JT DPNNPOMZ SFGFSSFE UP BT B3FBE�&WBMVBUF�1SJOU -PPQ PS
3&1-� 1ZUIPO QSPHSBNNFST TPNFUJNFT SFGFS UIF UIF 1ZUIPO TIFMM BT
B ψ1ZUIPO 3&1-ω PS KVTU ψUIF 3&1-ω GPS TIPSU�
/PUF
'SPN UIJT QPJOU PO UIF нOBM >>> QSPNQU EJTQMBZFE BGUFS FYFDVU�
JOH DPEF JO UIF JOUFSBDUJWF XJOEPX JT FYDMVEFE GSPN DPEF FYBN�
QMFT�
-FUυT USZ TPNFUIJOH B MJUUMF NPSF JOUFSFTUJOH UIBO BEEJOH UXP OVNCFST�
" SJUF PG QBTTBHF GPS FWFSZ QSPHSBNNFS JT XSJUJOH UIFJS нSTU ψ)FMMP
XPSMEω QSPHSBN UIBU QSJOUT UIF QISBTF ψ)FMMP XPSMEω PO UIF TDSFFO�
5P QSJOU UFYU UP UIF TDSFFO JO 1ZUIPO ZPV VTF UIF print() GVODUJPO� "
GVODUJPO JT B CJU PG DPEF UIBU UZQJDBMMZ UBLFT TPNF JOQVU EPFT TPNF�
UIJOH XJUI UIBU JOQVU BOE QSPEVDFT TPNF PVUQVU�
-PPTFMZ TQFBLJOH GVODUJPOT JO DPEFXPSL MJLFNBUIFNBUJDBM GVODUJPOT�
'PS FYBNQMF UIF NBUIFNBUJDBM GVODUJPO "S�ȐSq UBLFT UIF SBEJVT r
PG B DJSDMF BT JOQVU BOE QSPEVDFT UIF BSFB PG UIF DJSDMF BT PVUQVU�
��
���� 8SJUF B 1ZUIPO 4DSJQU
8BSOJOH
5IF BOBMPHZ UP NBUIFNBUJDBM GVODUJPOT IBT TPNF QSPCMFNT
UIPVHI CFDBVTF DPEF GVODUJPOT DBO IBWF TJEF FпFDUT� " TJEF
FмFDU PDDVST BOZUJNF B GVODUJPO QFSGPSNT TPNF PQFSBUJPO
UIBU DIBOHFT TPNFUIJOH BCPVU UIF QSPHSBN PS UIF DPNQVUFS
SVOOJOH UIF QSPHSBN�
'PS FYBNQMF ZPV DBO XSJUF B GVODUJPO JO 1ZUIPO UIBU UBLFT
TPNFPOFυT OBNF BT JOQVU TUPSFT UIF OBNF JO B нMF PO UIF
DPNQVUFS BOE UIFO PVUQVUT UIF QBUI UP UIF нMF XJUI UIF OBNF
JO JU� 5IF PQFSBUJPO PG TBWJOH UIF OBNF UP B нMF JT B TJEF FмFDU
PG UIF GVODUJPO�
:PVυMM MFBSO NPSF BCPVU GVODUJPOT JODMVEJOH IPX UP XSJUF ZPVS
PXO JO $IBQUFS ��
1ZUIPOυT print() GVODUJPO UBLFT TPNF UFYU BT JOQVU BOE UIFO EJTQMBZT
UIBU UFYU PO UIF TDSFFO� 5P VTF print() UZQF UIF XPSE print BU UIF
QSPNQU JO UIF JOUFSBDUJWF XJOEPX GPMMPXFE CZ UIF UFYU "Hello, world"
JOTJEF PG QBSFOUIFTFT�
>>> print("Hello, world")
Hello, world
"Hello, world" NVTU CF XSJUUFO XJUI EPVCMF RVPUBUJPO NBSLT TP UIBU
1ZUIPO JOUFSQSFUT JU BT UFYU BOE OPU TPNFUIJOH FMTF�
/PUF
"T ZPV UZQF DPEF JOUP UIF JOUFSBDUJWF XJOEPX ZPV NBZ OPUJDF
UIBU UIF GPOU DPMPS DIBOHFT GPS DFSUBJO QBSUT PG UIF DPEF� *%-&
IJHIMJHIUT QBSUT PG ZPVS EJмFSFOU DPMPST UP IFMQ NBLF JU FBTJFS
GPS ZPV UP JEFOUJGZ XIBU UIF EJмFSFOU QBSUT BSF�
#Z EFGBVMU CVJMU�JO GVODUJPOT TVDI BT print() BSF EJTQMBZFE JO
QVSQMF BOE UFYU JT EJTQMBZFE JO HSFFO�
��
���� 8SJUF B 1ZUIPO 4DSJQU
5IF JOUFSBDUJWF XJOEPX DBO FYFDVUF POMZ B TJOHMF MJOF PG DPEF BU B UJNF�
5IJT JT VTFGVM GPS USZJOH PVU TNBMM DPEF FYBNQMFT BOE FYQMPSJOH UIF
1ZUIPO MBOHVBHF CVU JU IBT B NBKPS MJNJUBUJPO� $PEF NVTU CF FOUFSFE
JO CZ B QFSTPO POF MJOF BU B UJNF�
"MUFSOBUJWFMZ ZPV DBO TUPSF TPNF 1ZUIPO DPEF JO B UFYU нMF BOE UIFO
FYFDVUF BMM PG UIF DPEF JO UIF нMF XJUI B TJOHMF DPNNBOE� 5IF DPEF JO
UIF нMF JT DBMMFE B TDSJQU BOE нMFT DPOUBJOJOH 1ZUIPO TDSJQUT BSF DBMMFE
TDSJQU рMFT�
4DSJQU нMFT BSF OJDF OPU POMZ CFDBVTF UIFZ NBLF JU FBTJFS UP SVO B QSP�
HSBN CVU BMTP CFDBVTF UIFZ DBO CF TIBSFE XJUI PUIFS QFPQMF TP UIBU
UIFZ DBO SVO ZPVS QSPHSBN UPP�
5IF 4DSJQU 8JOEPX
4DSJQUT BSF XSJUUFO VTJOH *%-&υT TDSJQU XJOEPX� :PV DBO PQFO UIF
TDSJQU XJOEPX CZ TFMFDUJOH 'JMF ϓ /FX 'JMF GSPN UIF NFOV BU UIF UPQ PG
UIF JOUFSBDUJWF XJOEPX�
/PUJDF UIBU XIFO UIF TDSJQU XJOEPX PQFOT UIF JOUFSBDUJWF XJOEPX
TUBZT PQFO� "OZ PVUQVU HFOFSBUFE CZ DPEF SVO JO UIF TDSJQU XJOEPX
JT EJTQMBZFE JO UIF JOUFSBDUJWF XJOEPX TP ZPV NBZ XBOU UP SFBSSBOHF
UIF UXP XJOEPXT TP UIBU ZPV DBO TFF CPUI PG UIFN BU UIF TBNF UJNF�
*O UIF TDSJQU XJOEPX UZQF JO UIF TBNF DPEF ZPV VTFE UP QSJOU "Hello,
world" JO UIF JOUFSBDUJWF XJOEPX�
print("Hello, world")
+VTU MJLF UIF JOUFSBDUJWF XJOEPX DPEF UZQFE JOUP UIF TDSJQU XJOEPX JT
IJHIMJHIUFE�
��
���� 8SJUF B 1ZUIPO 4DSJQU
8BSOJOH
8IFO ZPV XSJUF DPEF JO B TDSJQU ZPV EP OPU OFFE UP JODMVEF UIF
>>> QSPNQU UIBU ZPV TFF JO *%-&υT JOUFSBDUJWFXJOEPX� ,FFQ UIJT
JONJOE JG ZPV DPQZ BOE QBTUF DPEF GSPN FYBNQMFT UIBU TIPX UIF
3&1- QSPNQU�
3FNFNCFS UIPVHI UIBU JUυT OPU SFDPNNFOEFE UIBU ZPV DPQZ
BOE QBTUF FYBNQMFT GSPN UIF CPPL� 5ZQJOH FBDI FYBNQMF JO
ZPVSTFMG SFBMMZ QBZT Pм�
#FGPSF ZPV DBO SVO ZPVS TDSJQU ZPVNVTU TBWF JU� 'SPN UIFNFOV BU UIF
UPQ PG UIF XJOEPX TFMFDU 'JMF ϓ 4BWF "Tώ BOE TBWF UIF TDSJQU BT hello_-
world.py� 5IF .py нMF FYUFOTJPO JT UIF DPOWFOUJPOBM FYUFOTJPO VTFE UP
JOEJDBUF UIBU B нMF DPOUBJOT 1ZUIPO DPEF�
*O GBDU JG ZPV TBWF ZPVS TDSJQU XJUI BOZ FYUFOTJPO PUIFS UIBO .py UIF
DPEF IJHIMJHIUJOH XJMM EJTBQQFBS BOE BMM UIF UFYU JO UIF нMF XJMM CF EJT�
QMBZFE JO CMBDL� *%-&XJMM POMZ IJHIMJHIU 1ZUIPO DPEFXIFO JU JT TUPSFE
JO B .py нMF�
0ODF UIF TDSJQU JT TBWFE BMM ZPV IBWF UP EP UP SVO UIF QSPHSBN JT TFMFDU
3VO ϓ 3VO .PEVMF GSPN UIF TDSJQU XJOEPX BOE ZPVυMM TFF Hello, world
BQQFBS JO UIF JOUFSBDUJWF XJOEPX�
Hello, world
/PUF
:PV DBO BMTP QSFTT F5 UP SVO B TDSJQU GSPN UIF TDSJQU XJOEPX�
&WFSZ UJNF ZPV SVO PS SF�SVO B TDSJQU ZPV NBZ TFF UIF GPMMPXJOH PVU�
QVU JO JOUFSBDUJWF XJOEPX�
>>> =================== RESTART ===================
5IJT JT *%-&υT XBZ PG TFQBSBUJOH PVUQVU GSPN EJTUJODU SVOT PG B TDSJQU�
��
���� .FTT 5IJOHT 6Q
0UIFSXJTF JG ZPV SVO POF TDSJQU BGUFS BOPUIFS JU NBZ OPU CF DMFBS XIBU
PVUQVU CFMPOHT UP XIJDI TDSJQU�
5P PQFO BO FYJTUJOH TDSJQU JO *%-& TFMFDU 'JMF ϓ 0QFOώ GSPN UIFNFOV
JO FJUIFS UIF TDSJQU XJOEPX PS UIF JOUFSBDUJWF XJOEPX� 5IFO CSPXTF
GPS BOE TFMFDU UIF TDSJQU нMF ZPV XBOU UP PQFO� *%-& PQFOT TDSJQUT JO
B OFX TDSJQU XJOEPX TP ZPV DBO IBWF TFWFSBM TDSJQUT PQFO BU B UJNF�
/PUF
%PVCMF�DMJDLJOH PO B .py нMF GSPN B нMF NBOBHFS TVDI BT 8JO�
EPXT &YQMPSFS EPFT FYFDVUF UIF TDSJQU JO B OFX XJOEPX� )PX�
FWFS UIF XJOEPX JT DMPTFE JNNFEJBUFMZ XIFO UIF TDSJQU JT EPOF
SVOOJOHρPGUFO CFGPSF ZPV DBO FWFO TFF XIBU IBQQFOFE�
5P PQFO UIF нMF JO *%-& TP UIBU ZPV DBO SVO JU BOE TFF UIF PVUQVU
ZPV DBO SJHIU�DMJDL PO UIF нMF JDPO Ctrl-Click PO NBD04 BOE
DIPPTF UP &EJU XJUI *%-&�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��� .FTT 5IJOHT 6Q
&WFSZCPEZ NBLFT NJTUBLFTρFTQFDJBMMZ XIJMF QSPHSBNNJOH� *O DBTF
ZPV IBWFOυU NBEF BOZ NJTUBLFT ZFU MFUυT HFU B IFBE TUBSU PO UIBU BOE
NFTT TPNFUIJOH VQ PO QVSQPTF UP TFF XIBU IBQQFOT�
.JTUBLFT NBEF JO B QSPHSBN BSF DBMMFE FSSPST BOE UIFSF BSF UXP
NBJO UZQFT PG FSSPST ZPVυMM FYQFSJFODF�
�� 4ZOUBY FSSPST
�� 3VO�UJNF FSSPST
*O UIJT TFDUJPO ZPVυMM TFF TPNF FYBNQMFT PG DPEF FSSPST BOE MFBSO IPX
UP VTF UIF PVUQVU 1ZUIPO EJTQMBZT XIFO BO FSSPS PDDVST UP VOEFSTUBOE
XIBU FSSPS PDDVSSFE BOE XIJDI QJFDF PG DPEF DBVTFE JU�
��
���� .FTT 5IJOHT 6Q
4ZOUBY &SSPST
*O MPPTF UFSNT B TZOUBY FSSPS PDDVST XIFO ZPVXSJUF TPNF DPEF UIBU
JTOυU BMMPXFE JO UIF 1ZUIPO MBOHVBHF� :PV DBO DSFBUF B TZOUBY FSSPS CZ
DIBOHJOH UIF DPOUFOUT PG UIF hello_world.py TDSJQU GSPN UIF MBTU TFDUJPO
UP UIF GPMMPXJOH�
print("Hello, world)
*O UIJT FYBNQMF UIF EPVCMF RVPUBUJPONBSL BU UIF FOEPG "Hello, world"
IBT CFFO SFNPWFE� 1ZUIPOXPOυU CF BCMF UP UFMM XIFSF UIF TUSJOH PG UFYU
FOET� 4BWF UIF BMUFSFE TDSJQU BOE UIFO USZ UP SVO JU� 8IBU IBQQFOT
5IF DPEF XPOυU SVO� *%-& EJTQMBZT BO BMFSU CPY XJUI UIF GPMMPXJOH
NFTTBHF�
EOL while scanning string literal.
&0- TUBOET GPS &OE 0G -JOF TP UIJT NFTTBHF UFMMT ZPV UIBU 1ZUIPO
SFBE BMM UIF XBZ UP UIF FOE PG UIF MJOF XJUIPVU нOEJOH UIF FOE PG TPNF�
UIJOH DBMMFE B TUSJOH MJUFSBM�
" TUSJOH MJUFSBM JT UFYU DPOUBJOFE JO�CFUXFFO UXP EPVCMF RVPUBUJPO
NBSLT� 5IF UFYU "Hello, world" JT BO FYBNQMF PG B TUSJOH MJUFSBM�
/PUF
'PS CSFWJUZ TUSJOH MJUFSBMT BSF PGUFO SFGFSSFE UP BT TUSJOHT BM�
UIPVHI UIF UFSN ψTUSJOHω UFDIOJDBMMZ IBT B NPSF HFOFSBM NFBO�
JOH JO 1ZUIPO� :PV XJMM MFBSO NPSF BCPVU TUSJOHT JO $IBQUFS ��
#BDL JO UIF TDSJQU XJOEPX OPUJDF UIBU UIF MJOF DPOUBJOJOH XJUI "Hello,
world JT IJHIMJHIUFE JO SFE� 5IJT IBOEZ GFBUVSFT IFMQT ZPV RVJDLMZ нOE
XIJDI MJOF PG DPEF DBVTFE UIF TZOUBY FSSPS�
��
���� .FTT 5IJOHT 6Q
3VO�UJNF &SSPST
*%-& DBUDIFT TZOUBY FSSPST CFGPSF B QSPHSBN TUBSUT SVOOJOH CVU TPNF
FSSPST DBOυU CF DBVHIU VOUJM B QSPHSBN JT FYFDVUFE� 5IFTF FSSPST BSF
LOPXO BT SVO�UJNF FSSPST CFDBVTF UIF POMZ PDDVS BU UIF UJNF UIBU B
QSPHSBN JT SVO�
5P HFOFSBUF B SVO�UJNF FSSPS DIBOHF UIF DPEF JO hello_world.py UP UIF
GPMMPXJOH�
print(Hello, world)
/PX CPUI RVPUBUJPO NBSLT GSPN UIF QISBTF "Hello, world" IBWF CFFO
SFNPWFE� %JE ZPV OPUJDF IPX UIF UFYU DIBOHFT DPMPS XIFO SFNPWF UIF
RVPUBUJPO NBSLT *%-& OP MPOHFS SFDPHOJ[FT Hello, world BT B TUSJOH�
8IBU EP ZPV UIJOL IBQQFOT XIFO ZPV SVO UIF TDSJQU 5SZ JU PVU BOE
TFF�
4PNF SFE UFYU JT EJTQMBZFE JO UIF JOUFSBDUJWF XJOEPX�
Traceback (most recent call last):
File "/home/hello_world.py", line 1, in <module>
print(Hello, world)
NameError: name 'Hello' is not defined
8IBU IBQQFOFE 1ZUIPO JT UFMMJOH ZPV B GFX UIJOHT�
ύ " NameError PDDVSSFE�
ύ 5IF FSSPS IBQQFOFE PO MJOF � PG UIF TDSJQU�
ύ 5IF MJOF UIBU HFOFSBUFE UIF FSSPS XBT� print(Hello, world)�
ύ 5IF TQFDJнD FSSPS XBT name 'Hello' is not defined
" NameError JT BO FYBNQMF PG B SVO�UJNF FSSPS CFDBVTF JU PDDVST POMZ
PODF UIF QSPHSBN JT SVOOJOH� 4JODF UIF RVPUBUJPONBSLT BSPVOE Hello,
world BSF NJTTJOH 1ZUIPO EPFTOυU VOEFSTUBOE UIBU JU JT B TUSJOH PG UFYU�
��
���� $SFBUF B 7BSJBCMF
*OTUFBE 1ZUIPO UIJOLT UIBU Hello BOE world BSF OBNFT PG TPNFUIJOH
FMTF JO UIF DPEF UIF TBNF XBZ UIBU print JT UIF OBNF PG B GVODUJPO�
#VU UIF OBNFT Hello BOE world IBWFOυU CFFO EFнOFE BOZXIFSF TP UIF
QSPHSBN DSBTIFT�
*O UIF OFYU TFDUJPO ZPVυMM TFF IPX UP EFнOF OBNFT GPS WBMVFT JO ZPVS
DPEF� #FGPSF ZPV NPWF PO UIPVHI ZPV DBO HFU TPNF QSBDUJDF XJUI
TZOUBY FSSPST BOE SVO�UJNF FSSPST CZ XPSLJOH PO UIF SFWJFX FYFSDJTFT�
3FWJFX &YFSDJTFT
�� 8SJUF B TDSJQU UIBU *%-& XPOυU MFU ZPV SVO CFDBVTF JU IBT B TZOUBY
FSSPS�
�� 8SJUF B TDSJQU UIBU POMZ DSBTIFT ZPVS QSPHSBN PODF JU JT BMSFBEZ
SVOOJOH CFDBVTF JU IBT B SVO�UJNF FSSPS�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��� $SFBUF B 7BSJBCMF
7BSJBCMFT BSF OBNFT UIBU ZPV DBO BTTJHO UP EJмFSFOU PCKFDUT BOE VTF
UP SFGFSFODF UIPTF PCKFDUT UISPVHIPVU ZPVS DPEF� 7BSJBCMFT BSF GVOEB�
NFOUBM QBSUT PG BOZ 1ZUIPO QSPHSBN�
7BMVFT DBO CF BTTJHOFE UP B WBSJBCMF VTJOH B TQFDJBM PQFSBUPS DBMMFE
UIF BTTJHONFOU PQFSBUPS� 5IFSF BSF BMTP TPNF SVMFT HPWFSOJOH XIBU
OBNFT DBO CF VTFE GPS WBSJBCMFT BT XFMM BT TPNF DPOWFOUJPOT UP HVJEF
ZPV XIFO DIPPTJOH B OBNF GPS B WBSJBCMF�
5IF "TTJHONFOU 0QFSBUPS
-FUυTNPEJGZ UIF hello_world.py TDSJQU GSPN UIF MBTU TFDUJPO BHBJO� 5IJT
UJNF XFυMM VTF B WBSJBCMF UP TUPSF TPNF UFYU CFGPSF QSJOUJOH JU UP UIF
TDSFFO�
��
���� $SFBUF B 7BSJBCMF
phrase = "Hello, world"
print(phrase)
*O UIF нSTU MJOF B WBSJBCMF OBNFE phrase JT DSFBUFE BOE UIF WBMVF
"Hello, world" JT BTTJHOFE UP JU VTJOH UIF = PQFSBUPS� 5IFO phrase JT
EJTQMBZFE XJUI UIF print() GVODUJPO�
/PUF
5IF = PQFSBUPS JT DBMMFE UIF BTTJHONFOU PQFSBUPS CFDBVTF JU
JT VTFE UP BTTJHO B WBMVF UP B WBSJBCMF� "MUIPVHI = MPPLT MJLF UIF
ψFRVBMT TJHOω GSPN NBUIFNBUJDT JU IBT B EJмFSFOU NFBOJOH JO
1ZUIPO�
%JTUJOHVJTIJOH UIF = PQFSBUPS GSPN UIF ψFRVBMT TJHOω JT JNQPS�
UBOU BOE DBO CF B TPVSDF PG GSVTUSBUJPO GPS CFHJOOFS QSPHSBN�
NFST� +VTU SFNFNCFS XIFOFWFS ZPV TFF UIF = PQFSBUPS XIBU�
FWFS JT UP UIF SJHIU PG JU JT CFJOH BTTJHOFE UP B WBSJBCMF PO UIF
MFGU�
/PUJDF UIF EJмFSFODF JO XIFSF UIF RVPUBUJPO NBSLT BSF MPDBUFE JO UIF
TDSJQU BCPWF BT DPNQBSFE UP UIF hello_word.py TDSJQU JO UIF QSFWJPVT
TFDUJPO� 5IF RVPUBUJPO NBSLT BSF OP MPOHFS JOTJEF UIF QBSFOUIFTFT PG
UIF print() GVODUJPO�
8IFO ZPV TBWF BOE SVO UIF OFX TDSJQU UIF TBNF PVUQVU BT CFGPSF JT
EJTQMBZFE JO UIF JOUFSBDUJWF XJOEPX�
Hello, world
-PPL DMPTFMZ BU UIF print() GVODUJPO JO UIF TFDPOE MJOF PG UIF BCPWF
TDSJQU� $PNQBSF UIBU UP UIF GPMMPXJOH 1ZUIPO TUBUFNFOU�
print("phrase")
��
���� $SFBUF B 7BSJBCMF
1VUUJOH RVPUBUJPO NBSLT BSPVOE phrase KVTU QSJOUT UIF XPSE ψQISBTFω
JOTUFBE PG QSJOUJOH UIF UFYU BTTJHOFE UP UIF WBSJBCMF OBNFE phrase�
/PUF
5FYU UIBU BQQFBST JO RVPUBUJPO NBSLT JT DBMMFE B TUSJOH� 5IJT
OBNFNBLFT TFOTF CFDBVTF B TUSJOH JT KVTU B HSPVQ PG DIBSBDUFST
UIBU IBWF CFFO TUSVOH UPHFUIFS� :PVυMM MFBSO NPSF BCPVU TUSJOHT
JO $IBQUFS ��
7BSJBCMF /BNFT "SF $BTF 4FOTJUJWF
5BLF B MPPL BU UIF GPMMPXJOH TDSJQU BOE DPNQBSF JU UP UIF TDSJQU BU UIF
CFHJOOJOH PG UIJT TFDUJPO�
Phrase = "Hello, world"
print(phrase)
$BO ZPV TQPU UIF EJмFSFODF *O UIJT FYBNQMF UIF нSTU MJOF EFнOFT
UIF WBSJBCMF PhraseρXJUI B DBQJUBM ψ1ωρCVU UIF TFDPOE MJOF QSJOUT UIF
WBSJBCMF phrase� 4JODF OP WBSJBCMF OBNFE phrase JT EFнOFE SVOOJOH
UIF BCPWF TDSJQU XJMM QSPEVDF B NameError�
1ZUIPO WBSJBCMFT BSF DBTF�TFOTJUJWF TP UIF WBSJBCMFT Phrase BOE phrase
BSF UXP FOUJSFMZ EJмFSFOU UIJOHT� -JLFXJTF GVODUJPOT MJLF print()
BMNPTU BMXBZT TUBSU XJUI MPXFSDBTF MFUUFST� :PV DBO UFMM 1ZUIPO UP
print() CVU JU EPFTOυU LOPX IPX UP Print()�
8IFO ZPV SVO JOUP USPVCMF XJUI UIF DPEF FYBNQMFT JO UIJT CPPL CF
TVSF UP EPVCMF�DIFDL UIBU FWFSZ DIBSBDUFS JO ZPVS DPEFρJODMVEJOH
TQBDFTρFYBDUMZ NBUDIFT UIF FYBNQMFT� $PNQVUFST DBOυU VTF DPNNPO
TFOTF UP JOUFSQSFU XIBU ZPV NFBOU UP TBZ TP CFJOH BMNPTU DPSSFDU
XPOυU HFU B DPNQVUFS UP EP UIF SJHIU UIJOH�
��
���� $SFBUF B 7BSJBCMF
3VMFT GPS 7BMJE 7BSJBCMF /BNFT
7BSJBCMF OBNFT DBO CF BT MPOH PS BT TIPSU BT ZPV MJLF CVU UIFSF BSF B
DPVQMF PG SVMFT UIBU ZPVNVTU GPMMPX� 7BSJBCMF OBNFT DBO POMZ DPOUBJO
VQQFSDBTF BOE MPXFSDBTF MFUUFST "π; Bπ[ EJHJUT �π� BOE VOEFS�
TDPSFT @� )PXFWFS WBSJBCMF OBNFT DBOOPU CFHJO XJUI B EJHJU�
'PS FYBNQMF phrase string1 _a1p4a BOE list_of_names BSF BMM WBMJE WBSJ�
BCMF OBNFT CVU 9lives JT OPU�
/PUF
1ZUIPO WBSJBCMF OBNFT DBO DPOUBJO NBOZ EJмFSFOU WBMJE 6OJ�
DPEF DIBSBDUFST� 5IBU NFBOT WBSJBCMF OBNFT DBO DPOUBJO MFU�
UFST GSPN OPO�&OHMJTI BMQIBCFUT TVDI BT EFDPSBUFE MFUUFST MJLF
ª BOE ½ BOE FWFO $IJOFTF +BQBOFTF BOE "SBCJD TZNCPMT�
6OJDPEF JT B TUBOEBSE GPS EJHJUBMMZ SFQSFTFOUJOH UFYU VTFE JO
NPTU PG UIF XPSMEυT XSJUJOH TZTUFNT� :PV DBO MFBSO NPSF BCPVU
6OJDPEF PO 8JLJQFEJB� 1ZUIPOυT TVQQPSU GPS 6OJDPEF JT BMTP
XFMM EPDVNFOUFE JO UIF PпDJBM 1ZUIPO EPDVNFOUBUJPO�
+VTU CFDBVTF B WBSJBCMF OBNF JT WBMJE EPFTOυU OFDFTTBSJMZ NFBO UIBU JU
JT B HPPE OBNF� $IPPTJOH B HPPE OBNF GPS B WBSJBCMF DBO CF B TVSQSJT�
JOHMZ EJпDVMU UBTL� )PXFWFS UIFSF BSF TPNF HVJEFMJOFT UIBU ZPV DBO
GPMMPX UP IFMQ ZPV DIPPTF CFUUFS OBNFT�
1ZUIPO 7BSJBCMF /BNJOH $POWFOUJPOT
(JWJOH ZPVS WBSJBCMFT EFTDSJQUJWF OBNFT JT FTTFOUJBM FTQFDJBMMZ BT ZPVS
QSPHSBNT CFDPNFNPSF DPNQMFY� %FTDSJQUJWF WBSJBCMF OBNFT PGUFO SF�
RVJSF VTJOHNVMUJQMFXPSET� %POυU CF BGSBJE UP VTF MPOH WBSJBCMF OBNFT
JG UIFZ IFMQ NBLF JU DMFBS XIBU UIF WBSJBCMF JT SFGFSFODJOH�
*O NBOZ QSPHSBNNJOH MBOHVBHFT JU JT DPNNPO UP XSJUF WBSJBCMF
OBNFT JO BMM MPXFSDBTF FYDFQU GPS UIF нSTU MFUUFST PG BMM CVU UIF нSTU
XPSE JO UIF WBSJBCMF OBNF TVDI BT myPhrase PS listOfNames�
5IF QSBDUJDF PG DBQJUBMJ[JOH UIF нSTU MFUUFST PG XPSET JO UIJT NBOOFS JT
��
���� $SFBUF B 7BSJBCMF
LOPXO BT$BNFM$BTF CFDBVTF UIF KVYUBQPTJUJPO PG MPXFS� BOE VQQFS�
DBTF DIBSBDUFST MPPL MJLF IVNQT PO B DBNFM�
*O 1ZUIPO IPXFWFS JU JT NPSF DPNNPO UP XSJUF UIF XIPMF WBSJBCMF
OBNF JO MPXFSDBTF XJUI EJTUJODU XPSET JO B WBSJBCMF OBNF TFQBSBUFE
CZ BO VOEFSTDPSF� 'PS FYBNQMF myPhrase JT XSJUUFO BT my_phrase BOE
listOfNames BT list_of_names� 5IJT TUZMF JT LOPXO BT TOBLF DBTF�
8IJMF UIFSF JT OP IBSE�BOE�GBTU SVMF NBOEBUJOH UIBU ZPV XSJUF ZPVS
WBSJBCMF OBNFT JO TOBLF DBTF UIF QSBDUJDF JT DPEJнFE JO B EPDVNFOU
DBMMFE 1&1 � XIJDI JT XJEFMZ SFHBSEFE BT UIF PпDJBM TUZMF HVJEF GPS
XSJUJOH 1ZUIPO�
'PMMPXJOH UIF TUBOEBSET PVUMJOFE JO 1&1 � FOTVSFT UIBU ZPVS 1ZUIPO
DPEF JT SFBEBCMF CZ B MBSHF OVNCFS PG 1ZUIPO QSPHSBNNFST� 5IJT
NBLFT TIBSJOH BOE DPMMBCPSBUJOH PO DPEF FBTJFS GPS FWFSZPOF JOWPMWFE�
/PUF
"MM PG UIF DPEF FYBNQMFT JO UIJT DPVSTF GPMMPX 1&1 � HVJEFMJOFT
TP ZPVXJMM HFU B MPU PG FYQPTVSF UP XIBU ψXFMM GPSNBUUFEω 1ZUIPO
DPEF MPPLT MJLF�
*O UIJT TFDUJPO ZPV MFBSOFE XIBU WBSJBCMFT BSF BOE IPX UP EFDMBSF
UIFN JO ZPVS TDSJQUT� *O UIF GPMMPXJOH TFDUJPO ZPVυMM TFF IPX UP JO�
TQFDU UIF WBMVF PG B WBSJBCMF JO *%-&υT JOUFSBDUJWF XJOEPX� #VU нSTU
NBLF TVSF ZPVυWF NBTUFSFE UIF DPODFQUT JO UIJT TFDUJPO CZ XPSLJOH
UISPVHI UIF GPMMPXJOH SFWJFX FYFSDJTFT�
3FWJFX &YFSDJTFT
�� 6TJOH UIF JOUFSBDUJWF XJOEPX EJTQMBZ TPNF UFYU PO UIF TDSFFO CZ
VTJOH UIF print() GVODUJPO�
�� 6TJOH UIF JOUFSBDUJWF XJOEPX EJTQMBZ B TUSJOH PG UFYU CZ TBWJOH UIF
TUSJOH UP B WBSJBCMF UIFO SFGFSFODF UIF TUSJOH JO B print() GVODUJPO
VTJOH UIF WBSJBCMF OBNF�
�� %P FBDI PG UIF нSTU UXP FYFSDJTFT BHBJO CZ нSTU TBWJOH ZPVS DPEF JO
��
���� *OTQFDU 7BMVFT JO UIF *OUFSBDUJWF 8JOEPX
B TDSJQU BOE SVOOJOH JU�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��� *OTQFDU 7BMVFT JO UIF *OUFSBDUJWF
8JOEPX
:PV IBWF TFFO IPX UP BTTJHO B TUSJOH UP B WBSJBCMF BOE EJTQMBZ UIBU
TUSJOH XJUI UIF print() GVODUJPO CZ TBWJOH BOE SVOOJOH B TDSJQU� 5IFSF
JT BOPUIFS XBZ UP EJTQMBZ UIF WBMVF PG B WBSJBCMF XIFO ZPV BSF XPSLJOH
JO UIF JOUFSBDUJWF XJOEPX�
5ZQF UIF GPMMPXJOH JOUP *%-&υT JOUFSBDUJWF XJOEPX�
>>> my_phrase = "Hello, world"
>>> my_phrase
8IFO ZPV QSFTT Enter BGUFS UZQJOH my_phrase B TFDPOE UJNF UIF GPMMPX�
JOH PVUQVU JT EJTQMBZFE�
'Hello, world'
1ZUIPO QSJOUT UIF TUSJOH "Hello, world" BOE ZPV EJEOυU IBWF UP UZQF
print(my_phrase)�
/PX UZQF UIF GPMMPXJOH�
>>> print(my_phrase)
5IJT UJNF XIFO ZPV IJU Enter ZPV TFF�
Hello, world
%P ZPV TFF UIF EJмFSFODF JO UIF PVUQVU *U EPFTOυU IBWF BOZ TJOHMF
RVPUFT TVSSPVOEJOH JU� 8IBUυT HPJOH PO IFSF
��
���� *OTQFDU 7BMVFT JO UIF *OUFSBDUJWF 8JOEPX
8IFO ZPV KVTU UZQF my_phrase BOE QSFTT Enter ZPV BSF UFMMJOH 1ZUIPO UP
JOTQFDU UIF WBSJBCMF my_phrase� 5IF PVUQVU EJTQMBZFE JT B VTFGVM SFQSF�
TFOUBUJPO PG UIF PCKFDU BTTJHOFE UP UIF WBSJBCMF� *O UIJT DBTF my_phrase
JT B SFGFSFODF UP UIF TUSJOH "Hello, world" TP UIF PVUQVU JT TVSSPVOEFE
XJUI TJOHMF RVPUFT UP JOEJDBUF UIBU JU JT B TUSJOH PCKFDU�
0O UIF PUIFS IBOE XIFO ZPV print() B WBSJBCMF 1ZUIPO EJTQMBZT
B NPSF IVNBO�SFBEBCMF SFQSFTFOUBUJPO PG UIF PCKFDU SFGFSFODFE
CZ UIF WBSJBCMF� 'PS TUSJOHT CPUI XBZT PG CFJOH EJTQMBZFE BSF
IVNBO�SFBEBCMF CVU UIJT JT OPU UIF DBTF GPS FWFSZ LJOE PG PCKFDU�
4PNFUJNFT UIF UXP XBZT PG EJTQMBZJOH B WBSJBCMF QSPEVDF UIF TBNF
PVUQVU�
>>> x = 2
>>> x
2
>>> print(x)
2
)FSF x SFGFSFODFT UIF JOUFHFS �� 5IF PVUQVU JT OPU EJTQMBZFE JO TVS�
SPVOEJOH RVPUFT CFDBVTF � JT B OVNCFS BOE OPU B TUSJOH�
*OTQFDUJOH B WBSJBCMF JOTUFBE PG QSJOUJOH JU DBO CF VTFGVM GPS B DPVQMF
PG SFBTPOT� :PV DBO VTF JU UP EJTQMBZ UIF WBMVF PG B WBSJBCMF XJUIPVU
UZQJOH print()� .PSF JNQPSUBOUMZ UIPVHI JOTQFDUJOH B WBSJBCMF PGUFO
HJWFT ZPV NPSF VTFGVM JOGPSNBUJPO UIBO print()�
4VQQPTF ZPV IBWF UXP WBSJBCMFT� x = 2 BOE y = "2"� 5IFO print(x)
BOE print(y) CPUI EJTQMBZ UIF TBNF UIJOH� )PXFWFS UZQJOH x BOE y CZ
UIFNTFMWFT TIPXT UIF EJмFSFODF CFUXFFO UIF WBMVFT PG UIF UXP WBSJ�
BCMFT�
>>> x = 2
>>> y = "2"
>>> print(x)
2
��
���� -FBWF :PVSTFMG )FMQGVM /PUFT
>>> print(y)
2
>>> x
2
>>> y
'2'
5IF LFZ UBLFBXBZ IFSF JT UIBU print() EJTQMBZT B SFBEBCMF SFQSFTFOUB�
UJPO PG B WBSJBCMFυT WBMVF XIJMF TJNQMZ UZQJOH UIF OBNF PG B WBSJBCMF
BOE QSFTTJOH Enter EJTQMBZT TPNF VTFGVM SFQSFTFOUBUJPO PG UIF PCKFDU
SFGFSFODFE CZ UIF WBSJBCMF�
$IFDL PVU XIBU IBQQFOT XIFO ZPV UZQF print BOE IJU Enter�
<built-in function print>
,FFQ JO NJOE UIBU ZPV DBO POMZ JOTQFDU WBSJBCMFT MJLF UIJT JO UIF JOUFS�
BDUJWF XJOEPX� 'PS FYBNQMF TBWF BOE SVO UIF GPMMPXJOH TDSJQU�
my_phrase = "Hello, world"
my_phrase
5IF TDSJQU FYFDVUFT XJUIPVU BOZ FSSPST CVU OP PVUQVU JT EJTQMBZFE�
5ISPVHIPVU UIJT CPPL ZPV XJMM TFF FYBNQMFT UIBU VTF UIF JOUFSBDUJWF
XJOEPX UP JOTQFDU WBSJBCMFT�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��� -FBWF :PVSTFMG )FMQGVM /PUFT
"DPNNPOFYQFSJFODF BNPOHQSPHSBNNFST JT SFBEJOH TPNFUIJOH UIFZ
XSPUF TFWFSBM NPOUIT BHP BOE XPOEFSJOH ψ8IBU UIF IFDL EPFT UIJT
EP ω 5P IFMQ BWPJE UIFTF NPNFOUT PS BU MFBTU NBLF UIFN B MJUUMF MFTT
QBJOGVM ZPV DBO MFBWF ZPVSTFMG DPNNFOUT JO ZPVS DPEF�
��
���� -FBWF :PVSTFMG )FMQGVM /PUFT
$PNNFOUT BSF MJOFT PG UFYU UIBU EPOυU BмFDU UIF XBZ UIF TDSJQU SVOT�
5IFZ IFMQ UP EPDVNFOU XIBUυT TVQQPTFE UP CF IBQQFOJOH� 1ZUIPO JO�
UFSQSFUT BOZ MJOF UIBU TUBSUT XJUI UIF # DIBSBDUFS BT B DPNNFOU�
)FSF JT BO FYBNQMF PG UIF hello_world.py TDSJQU XJUI TPNF DPNNFOUT
BEEFE JO�
# This is my first script
phrase = "Hello, world."
print(phrase) # This line displays "Hello, world"
5IF нSTU MJOF EPFTOυU EP BOZUIJOH CFDBVTF JU TUBSUT XJUI B #� 1ZUIPO
JHOPSFT UIJT MJOF DPNQMFUFMZ� -JLFXJTF 1ZUIPO JHOPSFT UIF DPNNFOU
PO UIF MBTU MJOF� 5IF WBSJBCMF phrase JT TUJMM QSJOUFE CVU FWFSZUIJOH BGUFS
UIF # JT JHOPSFE�
0G DPVSTF ZPV DBO TUJMM VTF UIF # TZNCPM JOTJEF PG B TUSJOH� 'PS JOTUBODF
1ZUIPO XPOυU NJTUBLF UIF GPMMPXJOH GPS UIF TUBSU PG B DPNNFOU�
print("#1")
��
���� -FBWF :PVSTFMG )FMQGVM /PUFT
/PUF
*U JT PGUFO DPOTJEFSFE CBE QSBDUJDF UP XSJUF B DPNNFOU UIBU SF�
TUBUFT XIBU UIF DPEF GPMMPXJOH JU BMSFBEZ TBZT� 'PS FYBNQMF UIF
GPMMPXJOH DPNNFOU XPVME CF DPOTJEFSFE VOOFDFTTBSZ�
# Print "Hello, world"
print("Hello, world")
/P DPNNFOU JT OFFEFE JO UIF BCPWF FYBNQMF CFDBVTF UIF DPEF
JUTFMG FYQMJDJUMZ EFTDSJCFT XIBU JT CFJOH EPOF�
$PNNFOUT BSF CFTU VTFE UP DMBSJGZ DPEF UIBU NBZ OPU CF FBTZ UP
VOEFSTUBOE� *O UIF GPMMPXJOH FYBNQMF UIF DPNNFOU JT IFMQGVM
CFDBVTF JU NBZ OPU CF DMFBS XIBU JT CFJOH DBMDVMBUFE�
# Calculate the area of a rectangle
area = 10 * 5
.BOZ QSPHSBNNFST TUSJWF UP XSJUF TFMG�EPDVNFOUJOH DPEF
XIJDI JT FYQMJDJU FOPVHI UP VOEFSTUBOE XJUIPVU JOTFSUJOH DPN�
NFOUT� 5IJT JT OPU BMXBZT QPTTJCMF UIPVHI�
*G ZPV IBWF B MPU UP TBZ ZPV DBO BMTP DSFBUF DPNNFOUT UIBU TQBONVMUJ�
QMF MJOFT CZ VTJOH B TFSJFT PG UISFF TJOHMF RVPUFT ''' PS UISFF EPVCMF
RVPUFT """ XJUIPVU BOZ TQBDFT CFUXFFO UIFN� 0ODF ZPV EP UIBU FW�
FSZUIJOH BGUFS UIF ''' PS """ CFDPNFT B DPNNFOU VOUJM ZPV DMPTF UIF
DPNNFOU XJUI B NBUDIJOH ''' PS """�
.VMUJ�MJOF DPNNFOUT BSF GSFRVFOUMZ VTFE BU UIF UPQ PG B TDSJQU UP EPDV�
NFOU XIBU UIF TDSJQU EPFT QSPWJEF JOGPSNBUJPO BCPVU UIF BVUIPS BOE
EFTDSJCF IPX UP VTF UIF TDSJQU� 'PS FYBNQMF UIF hello_world.py TDSJQU
DPVME MPPL TPNFUIJOH MJLF UIJT�
"""
This is my first script.
��
���� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT
It prints the phrase "Hello, world."
The comments are longer than the script!
"""
phrase = "Hello, world."
print(phrase)
5IF нSTU UISFF MJOFT BSF OPX BMM POF DPNNFOU TJODF UIFZ GBMM CFUXFFO
QBJST PG """� :PV DBOυU BEE B NVMUJ�MJOF DPNNFOU BU UIF FOE PG B MJOF
PG DPEF MJLF XJUI UIF # WFSTJPO� 'PS FYBNQMF UIF GPMMPXJOH TDSJQU QSP�
EVDFT B SyntaxError�
print("Hello, world") """This is
an invalid comment"""
#FTJEFT MFBWJOH ZPVSTFMG OPUFT DPNNFOUT DBO BMTP CF VTFE UP ψDPN�
NFOU PVU DPEFω XIJMF ZPVυSF UFTUJOH B TDSJQU� *O PUIFS XPSET BEEJOH
B # BU UIF CFHJOOJOH PG B MJOF PG DPEF JT BO FBTZ XBZ UP NBLF TVSF UIBU
ZPV EPOυU VTF UIBU MJOF SJHIU OPX FWFO UIPVHI ZPVNJHIU XBOU UP LFFQ
JU BOE VTF JU MBUFS�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT
*O UIJT DIBQUFS ZPV MFBSOFEIPX UP JOUFSBDUXJUI UIF 1ZUIPO JOUFSQSFUFS
VTJOH *%-&υT JOUFSBDUJWF XJOEPX JODMVEJOH IPX UP QSJOU TPNFUIJOH UP
UIF DPOTPMF VTJOH UIF print() GVODUJPO� :PV BMTP MFBSOFE IPX UP DSFBUF
BOE TBWF B 1ZUIPO TDSJQU VTJOH *%-&υT TDSJQU FEJUPS�
*O BEEJUJPO UP JOUFSBDUJOH XJUI UIF 1ZUIPO JOUFSQSFUFS ZPV MFBSOFE
BCPVU UISFF JNQPSUBOU DPODFQUT� WBSJBCMFT FSSPST BOE DPNNFOUT�
��
���� 4VNNBSZ BOE "EEJUJPOBM 3FTPVSDFT
7BSJBCMFT BSF OBNFT UIBU BSF BTTJHOFE UP PCKFDUT TVDI BT TUSJOHT VTJOH
UIF BTTJHONFOU PQFSBUPS =� 1ZUIPO IBT SVMFT BCPVU XIBU DPOTUJUVUFT B
WBMJE WBSJBCMF OBNF BOE 1ZUIPO QSPHSBNNFST IBWF BEPQUFE UIF DPO�
WFOUJPO PG XSJUJOH WBSJBCMF OBNFT JO TOBLF DBTF SBUIFS UIBO $BNFM�
$BTF� 5IJT DPOWFOUJPO JT EPDVNFOUFE JO 1&1 � XIJDI JT 1ZUIPOυT PG�
нDJBM TUZMF HVJEF�
&SSPST BSF BO JOFWJUBCMF QBSU PG QSPHSBNNJOH BOE JO UIJT DIBQUFS ZPV
MFBSOFE BCPVU UXP DPNNPO FSSPST� TZOUBY FSSPST XIJDI PDDVS XIFO
ZPV UZQF TPNFUIJOH UIBU DBOOPU CF VOEFSTUPPE CZ UIF 1ZUIPO JOUFS�
QSFUFS BOE SVO�UJNF FSSPST XIJDI DBO POMZ CF DBVHIU PODF B QSPHSBN
JT SVOOJOH�
'JOBMMZ DPNNFOUT BSF VTFE UP MFBWF OPUFT GPS ZPVSTFMG BOE PUIFS QFP�
QMF XIP SFBE ZPVS DPEF� 5IFSF BSF UXP UZQFT PG DPNNFOUT� JOMJOF DPN�
NFOUT XIJDI TUBSU XJUI # BOE NVMUJ�MJOF DPNNFOUT UIBU CFHJO BOE
FOE XJUI USJQMF RVPUFTρFJUIFS ''' PS """�
*OUFSBDUJWF 2VJ[
5IJT DIBQUFS DPNFT XJUI B GSFF POMJOF RVJ[ UP DIFDL ZPVS MFBSO�
JOH QSPHSFTT� :PV DBO BDDFTT UIF RVJ[ VTJOH ZPVS QIPOF PS DPN�
QVUFS BU UIF GPMMPXJOH XFC BEESFTT�
SFBMQZUIPO�DPN�RVJ[[FT�QZUIPO�CBTJDT��
"EEJUJPOBM 3FTPVSDFT
5P UBLF ZPVS LOPXMFEHF FWFO GVSUIFS DIFDL PVU UIF SFTPVSDFT CFMPX�
ύ �� #FHJOOFS 5JQT GPS -FBSOJOH 1ZUIPO 1SPHSBNNJOH
ύ 8SJUJOH $PNNFOUT JO 1ZUIPO (VJEF
ύ 3FDPNNFOEFE SFTPVSDFT PO SFBMQZUIPO�DPN
-FBWF GFFECBDL PO UIJT TFDUJPO |
��
$IBQUFS �
4USJOHT BOE .FUIPET
4USJOHT BSF B GVOEBNFOUBM EBUB UZQF JO 1ZUIPO� *O TJNQMJнFE UFSNT
TUSJOHT BSF DPMMFDUJPOT PG UFYU BOE UIFZ TIPX VQ JONBOZ DPOUFYUT� 'PS
FYBNQMF TUSJOHT DBO DPNF GSPN VTFS JOQVU EBUB SFBE GSPN B нMF PS
NFTTBHFT TFOU CZ PUIFS EFWJDFT UBMLJOH PWFS B OFUXPSL�
*O UIJT DIBQUFS ZPV XJMM MFBSO IPX UP XPSL XJUI TUSJOHT BOE UIF GVOEB�
NFOUBMT PG VTJOH 1ZUIPO NFUIPET� #FDPNJOH QSPнDJFOU JO NBOJQVMBU�
JOH TUSJOHT JT B TLJMM XJUI CJH QBZPмT CFDBVTF B MPU PG UIF EBUB FODPVO�
UFSFE JO UIF SFBM XPSME JT JO UIF GPSN PG VOTUSVDUVSFE UFYU� #Z UIF FOE
PG UIJT DIBQUFS ZPV XJMM LOPX IPX UP�
ύ .BOJQVMBUF TUSJOHT XJUI TUSJOH NFUIPET
ύ 8PSL XJUI VTFS JOQVU
ύ %FBM XJUI TUSJOHT PG OVNCFST
ύ 'PSNBU TUSJOHT GPS QSJOUJOH
-FUυT HFU TUBSUFE�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��
���� 4USJOH 'VOEBNFOUBMT
��� 4USJOH 'VOEBNFOUBMT
*O UIJT TFDUJPO ZPV XJMM MFBSO NPSF BCPVU XIBU B TUSJOH JT BT XFMM BT
TPNF PG UIF GVOEBNFOUBM PQFSBUJPOT ZPV DBO QFSGPSN PO TUSJOHT� #F�
GPSF XF EJWF JO UIPVHI MFUυT TFF XIZ TUSJOHT BSF TP JNQPSUBOU� *O MPPTF
UFSNT B TUSJOH JT B DPMMFDUJPO PG UFYU� 8PSLJOHXJUI UFYU JT QSPCBCMZ OPU
UIF NPTU HMBNPSPVT QBSU PG QSPHSBNNJOH� )PXFWFS NPTU QSPHSBN�
NFST SFHBSEMFTT PG UIFJS TQFDJBMUZ EFBM XJUI UFYU PO B EBJMZ CBTJT�
8FC EFWFMPQFST XPSL XJUI UFYU UIBU HFUT EJTQMBZFE PO B XFC QBHF JO�
QVU GSPN XFC GPSNT BOE SFBE GSPN EBUBCBTFT� *O CVTJOFTT BVUPNB�
UJPO QSPHSBNNFST SFBE BOE FYUSBDU UFYU GSPN 1%'T TQSFBETIFFUT
BOE PUIFS EPDVNFOUT� %BUB TDJFOUJTUT QSPDFTT UFYU UP FYUSBDU EBUB BOE
QFSGPSN UIJOHT MJLF TFOUJNFOU BOBMZTJT XIJDI DBO IFMQ JEFOUJGZ BOE
DMBTTJGZ PQJOJPOT JO B CPEZ PG UFYU�
5IF GPDVT PG UIJT DIBQUFS JT UP QSPWJEF ZPV XJUI BO PWFSWJFX PG IPX
TUSJOHT XPSL BOE B WBSJFUZ PG XBZT UP NBOJQVMBUF BOE FYUSBDU JOGPSNB�
UJPO GSPN UIFN� -FUυT TUBSU Pм CZ UBLJOH B DMPTFS MPPL BU XIBU B TUSJOH
JT�
8IBU *T B 4USJOH
:PV DBO DSFBUF B TUSJOH CZ TVSSPVOEJOH TPNF UFYU XJUI RVPUBUJPO
NBSLT� :PV DBO VTF TJOHMF RVPUFT PS EPVCMF RVPUFT BT MPOH BT
UIF MFBEJOH BOE USBJMJOH RVPUBUJPO NBSLT BSF UIF TBNF UZQF� 5IF
TJOHMF PS EPVCMF RVPUFT UIBU TVSSPVOE B TUSJOH BSF DBMMFE UIF TUSJOHυT
EFMJNJUFST CFDBVTF UIFZ UFMM 1ZUIPO XIFSF POF TUSJOH CFHJOT BOE
FOET�
8IFOFWFS ZPV XSJUF PVU B TUSJOH UIF SFTVMU JT DBMMFE B TUSJOH MJUFSBM�
5IF OBNF JOEJDBUFT UIBU UIF TUSJOH JT XSJUUFO PVU MJUFSBMMZ UIF XBZ JU
MPPLT� $POUSBTU UIJT UP B TUSJOH UIBU NBZ DPNF JOUP ZPVS QSPHSBN JO
UIF GPSN PG VTFS JOQVU� 4VDI B TUSJOH JT OPU B TUSJOH MJUFSBM CFDBVTF JU
JT OPU FYQMJDJUMZ XSJUUFO PVU JO UIF QSPHSBNυT DPEF�
)FSF BSF TPNF FYBNQMFT PG TUSJOH MJUFSBMT�
��
���� 4USJOH 'VOEBNFOUBMT
string1 = 'Hello, world.'
string2 = "We're #1!"
string3 = "1234"
string4 = 'I said, "Put it over by the llama."'
string1 BOE string4 IBWF TJOHMF RVPUFT BT EFMJNJUFST XIJMF string2 BOE
string3 VTF EPVCMF RVPUFT� /PUJDF UIBU string2 BOE string4 TIPX IPX
CPUI LJOET PG RVPUFT DBO CF VTFE JO UIF TBNF TUSJOH� 5IF TUSJOH "We're
#1" VTFT UIF TJOHMF RVPUF ' BT BO BQPTUSPQIF BOE JO UIF TUSJOH 'I said,
"Put it over by the llama."' EPVCMF RVPUFT BSF VTFE JOTJEF PG UIF
TUSJOH�
"GUFS 1ZUIPO SFBET UIF нSTU EFMJNJUFS BMM PG UIF DIBSBDUFST BGUFS JU BSF
DPOTJEFSFE B QBSU PG UIF TUSJOH VOUJM B TFDPOE NBUDIJOH EFMJNJUFS JT
SFBE� 5IJT JT XIZ ZPV DBO VTF B TJOHMF RVPUF JO B TUSJOH EFMJNJUFE CZ
EPVCMF RVPUFT BOE WJDF WFSTB�
*G ZPV USZ UP VTF EPVCMF RVPUFT JOTJEF PG B TUSJOH UIBU JT EFMJNJUFE CZ
EPVCMF RVPUFT ZPV XJMM SVO JOUP TPNF QSPCMFNT�
>>> text = "She said "What time is it?""
File "<stdin>", line 1
text = "She said "What time is it?""
^
SyntaxError: invalid syntax
1ZUIPO UISPXT B SyntaxError CFDBVTF JU UIJOLT UIBU UIF TUSJOH FOET BGUFS
UIF TFDPOE " BOE EPFTOυU LOPX IPX UP JOUFSQSFU UIF SFTU PG UIF MJOF�
��
���� 4USJOH 'VOEBNFOUBMT
/PUF
" DPNNPO QFU QFFWF BNPOH QSPHSBNNFST JT UIF VTF PG NJYFE
RVPUFT GPS EFMJNJUJOH TUSJOHT� 8IFO ZPV XPSL PO B QSPKFDU JU
JT CFTU QSBDUJDF UP QJDL FJUIFS TJOHMF RVPUFT PS EPVCMF RVPUFT BT
UIF EFMJNJUFS PG DIPJDF BOE TUJDL XJUI JU GPS UIF FOUJSF QSPKFDU�
,FFQ JONJOE UIBU UIFSF JTOυU SFBMMZ B SJHIU PS XSPOH DIPJDF� 5IF
HPBM JT UP CF DPOTJTUFOU XIJDI IFMQT NBLF ZPVS DPEF FBTJFS UP
SFBE BOE VOEFSTUBOE�
4USJOHT DBO DPOUBJO BOZ LJOE PG DIBSBDUFS� 'PS FYBNQMF string2 JO UIF
BCPWF FYBNQMF DPOUBJOT B QPVOE TJHO # BOE string3 DPOUBJOT OVN�
CFST� 5IF TUSJOH "×Pýŧħøŋ×" JT BMTP B WBMJE 1ZUIPO TUSJOH�
4USJOH MJUFSBMT DBO CFDPNF RVJUF MPOH� 5IF 1&1� TUZMF�HVJEF SFDPN�
NFOET UIBU BOZ TJOHMF MJOF PG 1ZUIPO DPEF TIPVME DPOUBJO OP NPSF
UIBO �� DIBSBDUFSTρJODMVEJOH TQBDFT� 5P EFBM XJUI TUSJOH MJUFSBMT UIBU
DPOUBJO NPSF UIBO �� DIBSBDUFST ZPV DBO CSFBL VQ UIF TUSJOH BDSPTT
NVMUJQMF MJOFT��
.VMUJ�-JOF 4USJOHT
4VQQPTF ZPV OFFE UP нU UIF GPMMPXJOH UFYU JO B TUSJOH MJUFSBM�
ψ5IJT QMBOFU IBTρPS SBUIFS IBEρB QSPCMFN XIJDI XBT
UIJT� NPTU PG UIF QFPQMF MJWJOH PO JU XFSF VOIBQQZ GPS
QSFUUZ NVDI PG UIF UJNF� .BOZ TPMVUJPOT XFSF TVHHFTUFE
GPS UIJT QSPCMFN CVU NPTU PG UIFTF XFSF MBSHFMZ DPO�
DFSOFE XJUI UIF NPWFNFOUT PG TNBMM HSFFO QJFDFT PG
QBQFS XIJDI JT PEE CFDBVTF PO UIF XIPMF JU XBTOυU UIF
TNBMM HSFFO QJFDFT PG QBQFS UIBU XFSF VOIBQQZ�ω
ρ %PVHMBT "EBNT 5IF )JUDIIJLFSυT (VJEF UP UIF (BMBYZ
5IJT QBSBHSBQI XPOυU нU JO 1&1�υT ���DIBSBDUFS MJOF MJNJU XIJDI JT B
HPPE SFDPNNFOEBUJPO GPS LFFQJOH ZPVS DPEF FBTZ UP SFBE� 4P XIBU EP
ZPV EP
��
���� 4USJOH 'VOEBNFOUBMT
5IFSF BSF B DPVQMF PG XBZT UP UBDLMF UIJT� 5IF нSTU XBZ JT UP CSFBL VQ
UIF TUSJOH BDSPTT NVMUJQMF MJOFT BOE QVU B CBDLTMBTI \ BU UIF FOE PG BMM
CVU UIF MBTU MJOF� )FSFυT BO FYBNQMF�
paragraph = "This planet has - or rather had - a problem, which was \
this: most of the people living on it were unhappy for pretty much \
of the time. Many solutions were suggested for this problem, but \
most of these were largely concerned with the movements of small \
green pieces of paper, which is odd because on the whole it wasn't \
the small green pieces of paper that were unhappy."
/PUJDF UIBU ZPV EPOυU IBWF UP DMPTF FBDI MJOF XJUI B RVPUBUJPO NBSL�
/PSNBMMZ 1ZUIPO XPVME HFU UP UIF FOE PG UIF нSTU MJOF BOE DPNQMBJO
UIBU ZPV EJEOυU DMPTF UIF TUSJOH XJUI B NBUDIJOH EPVCMF RVPUF� 8JUI B
CBDLTMBTI BU UIF FOE IPXFWFS ZPV DBO LFFQ XSJUJOH UIF TBNF TUSJOH
PO UIF OFYU MJOF� 8IFO ZPV QSJOU B TUSJOH MJUFSBM UIBU JT CSPLFO VQ PO
NVMUJQMF MJOFT UIJT XBZ UIF PVUQVU JT TUJMM PO POF MJOF�
"OPUIFS BQQSPBDI JT UP XSBQ ZPVS TUSJOH MJUFSBM XJUI USJQMF RVPUFT FJ�
UIFS """ PS '''� )FSF JT IPX ZPV DPVME XSJUF UIF TBNF QBSBHSBQI BCPWF
VTJOH UIJT BQQSPBDI�
paragraph = """This planet has - or rather had - a problem, which was
this: most of the people living on it were unhappy for pretty much
of the time. Many solutions were suggested for this problem, but
most of these were largely concerned with the movements of small
green pieces of paper, which is odd because on the whole it wasn't
the small green pieces of paper that were unhappy."""
8IFO ZPV XSJUF B TUSJOH MJUFSBM XJUI USJQMF RVPUFT UIF XIJUFTQBDF JO
ZPVS TUSJOH JT QSFTFSWFE� 4P JG ZPV print(paragraph) UIF TUSJOH XJMM CF
CSPLFO VQ PONVMUJQMF MJOFT KVTU MJLF JU JT JO UIF TUSJOH MJUFSBM� 5IJT NBZ
PS NBZ OPU CF XIBU ZPV XBOU TP ZPV XJMM OFFE UP UIJOL BCPVU XIBU UIF
PVUQVU TIPVME CF CFGPSF ZPV DIPPTF IPX UP XSJUF B NVMUJ�MJOF TUSJOH�
5P TFF IPX XIJUFTQBDF JT QSFTFSWFE JO B USJQMF�RVPUFE TUSJOH UZQF UIF
GPMMPXJOH JOUP *%-&υT JOUFSBDUJWF XJOEPX�
��
���� #BTJD 4USJOH 0QFSBUJPOT
>>> print("""This is a
... string that spans across multiple lines
... that also preserves whitespace.""")
5IF PVUQVU MPPLT MJLF UIJT�
This is a
string that spans across multiple lines
that also preserves whitespace.
3FWJFX &YFSDJTFT
�� 1SJOU B TUSJOH UIBU VTFT EPVCMF RVPUBUJPO NBSLT JOTJEF UIF TUSJOH�
�� 1SJOU B TUSJOH UIBU VTFT BO BQPTUSPQIF JOTJEF UIF TUSJOH�
�� 1SJOU B TUSJOH UIBU TQBOTNVMUJQMF MJOFT XJUI XIJUFTQBDF QSFTFSWFE�
�� 1SJOU B POF�MJOF TUSJOH UIBU ZPV IBWF XSJUUFO PVU PO NVMUJQMF MJOFT�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��� #BTJD 4USJOH 0QFSBUJPOT
/PX UIBU ZPV LOPX XIBU B TUSJOH JT BOE IPX UP EFDMBSF TUSJOH MJUFSBMT
JO ZPVS 1ZUIPO DPEF MFUυT FYQMPSF TPNF PG UIF CBTJD PQFSBUJPOT ZPV
DBO EP XJUI TUSJOHT�
*O UIJT TFDUJPO ZPVυMM MFBSO UISFF CBTJD TUSJOH PQFSBUJPOT� IPX UP KPJO
NVMUJQMF TUSJOHT UPHFUIFS JOUP B TJOHMF TUSJOH IPX UP EFUFSNJOF UIF
MFOHUI PG UIF TUSJOH BOE IPX UP BDDFTT JOEJWJEVBM QBSUT PG B TUSJOH�
4USJOH $PODBUFOBUJPO
5XP TUSJOHT DBO CF DPNCJOFE PS DPODBUFOBUFE VTJOH UIF + PQFSBUPS�
��
���� #BTJD 4USJOH 0QFSBUJPOT
>>> string1 = "abra"
>>> string2 = "cadabra"
>>> magic_string = string1 + string2
>>> magic_string
'abracadabra'
*O UIF FYBNQMF BCPWF TUSJOH DPODBUFOBUJPO PDDVST PO UIF UIJSE MJOF
XIFSF string1 BOE string2 BSF DPODBUFOBUFE VTJOH + BOE UIF SFTVMU JT
BTTJHOFE UP UIF WBSJBCMF magic_string� /PUJDF UIBU UIF UXP TUSJOHT BSF
KPJOFE UPHFUIFS XJUIPVU BOZ XIJUFTQBDF CFUXFFO UIFN�
0OF DPNNPO BQQMJDBUJPO PG TUSJOH DPODBUFOBUJPO JT UP KPJO UXP SFMBUFE
TUSJOHT TVDI BT B нSTU BOE MBTU OBNF JOUP B GVMM OBNF�
>>> first_name = "Jean-Luc"
>>> last_name = "Picard"
>>> full_name = first_name + " " + last_name
>>> full_name
'Jean-Luc Picard"
*O UIJT FYBNQMF B TQBDF JT BEEFE CFUXFFO UIF first_name BOE last_name
TUSJOHT CZ нSTU DPODBUFOBUJOH first_nameXJUI " " BOE UIFO DPODBUFOBU�
JOH UIF SFTVMU XJUI last_name�
8IFO ZPV XBOU UP DPNCJOF NBOZ TUSJOHT BU PODF JOTJEF PG B print()
GVODUJPO ZPV DBO BMTP VTF DPNNBT UP TFQBSBUF UIFN� 5IJT BVUPNBUJ�
DBMMZ BEET TQBDFT CFUXFFO UIF TUSJOHT MJLF TP�
>>> print("abra", "ca", "dabra")
abra ca dabra
5IF DPNNBT IBWF UP HP PVUTJEF PG UIF RVPUBUJPO NBSLT TJODF PUIFS�
XJTF UIF DPNNBT XPVME CFDPNF QBSU PG UIF TUSJOHT UIFNTFMWFT�
��
���� #BTJD 4USJOH 0QFSBUJPOT
/PUF
5FDIOJDBMMZ TQFBLJOH XIFO ZPV print() NVMUJQMF TUSJOHT TFQB�
SBUFE CZ B DPNNB ZPV BSFOυU QFSGPSNJOH TUSJOH DPODBUFOBUJPO
CFDBVTF ZPV BSFOυU VTJOH UIF + PQFSBUPS� 5IJT UFDIOJRVF DBO CF
VTFGVM IPXFWFS XIFO ZPV OFFE UP EJTQMBZ TFWFSBM TUSJOHT PO UIF
TBNF MJOF BOE ZPV EPOυU XBOU UP DPODBUFOBUF UIFN JOUP B OFX
TUSJOH�
%FUFSNJOF UIF -FOHUI PG B 4USJOH
5IF MFOHUI PG B TUSJOH JT UIF OVNCFS PG DIBSBDUFST DPOUBJOFE JO UIF
TUSJOH JODMVEJOH TQBDFT� 'PS FYBNQMF UIF TUSJOH "abc" IBT MFOHUI �
BOE UIF TUSJOH "make it so" IBT MFOHUI ���
5P EFUFSNJOF UIF MFOHUI PG B TUSJOH VTF 1ZUIPOυT CVJMU�JO len() GVOD�
UJPO� 5P TFF IPX JU XPSLT UZQF UIF GPMMPXJOH JOUP *%-&υT JOUFSBDUJWF
XJOEPX�
>>> len("abc")
3
:PV DBO VTF len() UP HFU UIF MFOHUI PG TUSJOHT UIBU IBWF CFFO BTTJHOFE
UP B WBSJBCMF�
>>> my_string = "abc"
>>> string_length = len(my_string)
>>> string_length
3
'JSTU UIF TUSJOH "abc" JT BTTJHOFE UP UIF WBSJBCMF my_string� 5IFO len()
JT VTFE UP HFU UIF MFOHUI PG my_string BOE BTTJHO UIJT WBMVF UP UIF
string_length WBSJBCMF� 'JOBMMZ UIF WBMVF PG string_length XIJDI JT �
JT EJTQMBZFE�
/PUJDF IPX my_string JT QMBDFE CFUXFFO UIF UXP QBSFOUIFTFT PG UIF
len() GVODUJPO� 5IJT UFMMT len() UP QFSGPSN JUT PQFSBUJPO XJUI UIF my_-
��
���� #BTJD 4USJOH 0QFSBUJPOT
string WBSJBCMF UIF TBNF XBZ UIBU QVUUJOH B TUSJOH JO CFUXFFO UIF
QBSFOUIFTFT PG print() UFMMT 1ZUIPO UP QSJOU UIF TUSJOH�
"DDFTT $IBSBDUFST JO B 4USJOH
" TUSJOH JT B TFRVFODF PG DIBSBDUFST� :PV DBO BDDFTT JOEJWJEVBM DIBSBD�
UFST JO B TUSJOH CZ UBDLJOH PO TRVBSF CSBDLFUT [ BOE ] BGUFS UIF TUSJOH
BOE QVUUJOH B OVNCFS O JO CFUXFFO UIF CSBDLFUT UP HFU UIF OUI DIBSBD�
UFS JO UIF TUSJOH�
8BSOJOH
#F DBSFGVM XIFO ZPVυSF VTJOH�
ύ QBSFOUIFTFT� ( )
ύ TRVBSF CSBDLFUT� [ ]
ύ DVSMZ CSBDFT� { }
5IFTF BMM NFBO EJмFSFOU UIJOHT JO 1ZUIPO TP ZPV DBO OFWFS
TXJUDI POF GPS BOPUIFS� :PVυMM TFF NPSF FYBNQMFT PG XIFO FBDI
POF JT VTFE BT ZPV QSPHSFTT UISPVHI UIJT CPPL� 'PS OPX KVTU CF
BXBSF UIFZυSF BMM VTFE EJмFSFOUMZ�
5ZQF UIF GPMMPXJOH JOUP *%-&υT JOUFSBDUJWF XJOEPX�
>>> flavor = "apple pie"
>>> flavor[3]
'l'
5ZQJOH flavor[3] SFUVSOT UIF UIJSE DIBSBDUFS PG UIF TUSJOH "apple pie"
XIJDI JTώ "l" 8BJU JTOυU 'p' UIF UIJSE DIBSBDUFS PG "apple pie"
*O 1ZUIPOρBOE NPTU PUIFS QSPHSBNNJOH MBOHVBHFTρDPVOUJOH
BMXBZT TUBSUT BU �� 4P JO UIJT DBTF 'a' JT UIF ψ[FSPUIω DIBSBDUFS PG UIF
TUSJOH "apple pie"� 5IVT 'p' JT UIF нSTU DIBSBDUFS 'p' JT UIF TFDPOE
BOE 'l' JT UIF UIJSE�
��
���� #BTJD 4USJOH 0QFSBUJPOT
5P EJTQMBZ UIF ψнSTUω DIBSBDUFS ZPV OFFE UP QSJOU UIF �UI DIBSBDUFS�
>>> flavor[0]
'a'
5IF OVNCFS BTTJHOFE UP FBDI DIBSBDUFSυT QPTJUJPO JT DBMMFE UIF DIBSBD�
UFSυT JOEFY PS TVCTDSJQU OVNCFS� 5IF GPMMPXJOH UBCMF TIPXT FBDI
DIBSBDUFS PG UIF TUSJOH "apple pie" BOE JUT BTTPDJBUFE JOEFY�
$IBSBDUFS� a p p l e p i e
*OEFY�4VCTDSJQU� 0 1 2 3 4 5 6 7 8
8BSOJOH
'PSHFUUJOH UIBU DPVOUJOH TUBSUT XJUI [FSP BOE USZJOH UP SFGFS UP
UIF нSTU DIBSBDUFS JO B TUSJOH XJUI UIF JOEFY 1 SFTVMUT JO XIBU JT
DPNNPOMZ LOPXO BT BO Pп�CZ�POF FSSPS�
0м�CZ�POF FSSPST BSF B DPNNPO TPVSDF PG GSVTUSBUJPO GPS CFHJO�
OJOH BOE FYQFSJFODFE QSPHSBNNFST BMJLF�
8IBU EP ZPV UIJOL IBQQFOT JG ZPV USZ UP BDDFTT B DIBSBDUFS CZ BO JOEFY
UIBU JT HSFBUFS UIBO UIF JOEFY PG UIF MBTU DIBSBDUFS JO UIF TUSJOH 5SZ
UIJT PVU�
>>> flavor[13]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: string index out of range
1ZUIPO UISPXT BO IndexError UFMMJOH ZPV UIBU UIF JOEFY JT ψPVU PG SBOHF�ω
5IF MBSHFTU JOEFY UIBU ZPV DBO BDDFTT JO B TUSJOH JT POF MFTT UIBO UIF
MFOHUI PG UIF TUSJOH� 4JODF "apple pie" IBT MFOHUI � UIF MBSHFTU JOEFY
ZPV DBO BDDFTT JT ��
��
���� #BTJD 4USJOH 0QFSBUJPOT
-FUυT USZ TPNFUIJOH FWFO DSB[JFS� 8IBU EP ZPV UIJOL IBQQFOT JG ZPV
USZ UP BDDFTT B OFHBUJWF JOEFY (JWF UIJT B USZ�
>>> flavor[-1]
'e'
5IF JOEFY �� JT BTTPDJBUFE UP UIF MBTU DIBSBDUFS JO UIF TUSJOH XIJDI GPS
"apple pie" JT UIF MFUUFS "e"� 5IF OFHBUJWF JOEJDFT GPS UIF DIBSBDUFST JO
UIF TUSJOH "apple pie" BSF TIPXO JO UIF UBCMF CFMPX�
$IBSBDUFS� a p p l e p i e
/FHBUJWF JOEFY� -9 -8 -7 -6 -5 -4 -3 -2 -1
4VQQPTF ZPV OFFE UIF TUSJOH DPOUBJOJOH KVTU UIF нSTU UISFF MFUUFST PG
UIF TUSJOH flavor = "apple pie"� :PV DPVME BDDFTT FBDI DIBSBDUFS CZ
JOEFY BOE DPODBUFOBUF UIFN MJLF UIJT�
>>> first_three_letters = flavor[0] + flavor[1] + flavor[2]
>>> first_three_letters
'app'
:PV DBOQSPCBCMZ JNBHJOF IPX DMVNTZ UIJTXPVME CF GPS FYUSBDUJOH MPUT
PG JOGPSNBUJPO GSPN B MPOH TUSJOH� *U JT VTVBMMZ FBTJFS UP HFU QPSUJPOT
PG B TUSJOH VTJOH TMJDFT�
4USJOH 4MJDFT
:PV DBO FYUSBDU B QPSUJPO PG B TUSJOH DBMMFE B TVCTUSJOH XJUI BO FY�
UFOEFE WFSTJPO PG UIF TVCTDSJQU PQFSBUJPO� 5P EP UIJT JOTFSU B DPMPO
CFUXFFO UXP TVCTDSJQU OVNCFST JOTJEF PG TRVBSF CSBDLFUT MJLF UIJT�
>>> flavor = "apple pie"
>>> flavor[0:3]
'app'
��
���� #BTJD 4USJOH 0QFSBUJPOT
5IF FYQSFTTJPO flavor[0:3] SFUVSOT UIF нSTU UISFF DIBSBDUFST PG UIF
TUSJOH BTTJHOFE UP UIF WBSJBCMF flavor TUBSUJOH BU UIF �UI DIBSBDUFS BOE
HPJOH VQ UP CVU OPU JODMVEJOH UIF �SE DIBSBDUFS� 5IF [0:3] QBSU PG
flavor[0:3] JT DBMMFE B TMJDF TJODF JU SFUVSOT B ψTMJDFω PG UIF TUSJOH SFG�
FSFODFE CZ UIF WBSJBCMF flavor� *O UIJT DBTF JU SFUVSOT B TMJDF PG "apple
pie"� :VN�
5IF OVNCFS CFGPSF UIF DPMPO JO B TMJDF JT BMXBZT UIF JOEFY PG UIF нSTU
DIBSBDUFS UP JODMVEF XIJMF UIF OVNCFS BGUFS UIF DPMPO JT UIF JOEFY
PG UIF нSTU DIBSBDUFS UIBU JTOυU JODMVEFE� *G ZPV VTF UIF DPMPO JO UIF
CSBDLFUT CVU PNJU POF PG UIF OVNCFST JO B SBOHF 1ZUIPO BTTVNFT UIBU
ZPV XBOU UP HP BMM UIF XBZ UP UIF FOE PG UIF TUSJOH JO UIBU EJSFDUJPO�
>>> flavor = "apple pie"
>>> flavor[:5]
'apple'
>>> flavor[5:]
' pie'
>>> flavor[:]
'apple pie'
4MJDFT BMTP TVQQPSU OFHBUJWF JOEJDFT�
>>> flavor[:-5]
'appl'
>>> flavor[-5:]
'e pie'
>>> flavor[-8:-5]
'ppl'
*G ZPV USZ UP BDDFTT BO JOEFY JO B TMJDF UIBU EPFTOυU FYJTU 1ZUIPO XPOυU
UISPX BO IndexError MJLF JU EPFT JG ZPV USZ UP HFU B TJOHMF DIBSBDUFS�
>>> flavor[:14]
'apple pie'
��
���� #BTJD 4USJOH 0QFSBUJPOT
>>> flavor[13:15]
''
*O UIJT FYBNQMF UIF нSTU MJOF HFUT UIF TMJDF GSPN UIF CFHJOOJOH PG UIF
TUSJOH VQ UP CVU OPU JODMVEJOH UIF GPVSUFFOUI DIBSBDUFS� 5IF TUSJOH
BTTJHOFE UP flavor IBT MFOHUI � TP ZPV NJHIU FYQFDU 1ZUIPO UP UISPX
BO FSSPS� *OTUFBE BOZ OPO�FYJTUFOU JOEJDFT BSF JHOPSFE BOE UIF FOUJSF
TUSJOH "apple pie" JT SFUVSOFE�
5IF TFDPOE MJOF PG UIF FYBNQMF TIPXT XIBU IBQQFOT XIFO ZPV USZ UP
HFU B TMJDF XIFSF UIF FOUJSF SBOHF JT PVU PG CPVOET� flavor[13:15] BU�
UFNQUT UP HFU UIF UIJSUFFOUI BOE GPVSUFFOUI DIBSBDUFST XIJDI EPOυU
FYJTU� *OTUFBE PG UISPXJOH BO FSSPS UIF FNQUZ TUSJOH "" JT SFUVSOFE�
4USJOHT "SF *NNVUBCMF
5P XSBQ UIJT TFDUJPO VQ MFUυT EJTDVTT BO JNQPSUBOU QSPQFSUZ PG TUSJOH
PCKFDUT� 4USJOHT BSF JNNVUBCMF XIJDI NFBOT UIBU ZPV DBOυU DIBOHF
UIFN PODF ZPVυWF DSFBUFE UIFN� 'PS JOTUBODF TFF XIBU IBQQFOT XIFO
ZPV USZ UP BTTJHO B OFX MFUUFS UP POF QBSUJDVMBS DIBSBDUFS PG B TUSJOH�
>>> my_string = "goal"
>>> my_string[0] = "f" # This won't work!
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'str' object does not support item assignment
1ZUIPO UISPXT B TypeError BOE UFMMT ZPV UIBU str PCKFDUT EPOυU TVQQPSU
JUFN BTTJHONFOU�
/PUF
5IF UFSN str JT 1ZUIPOυT JOUFSOBM OBNF GPS UIF TUSJOH EBUB UZQF�
*G ZPV XBOU UP BMUFS B TUSJOH ZPV NVTU DSFBUF BO FOUJSFMZ OFX TUSJOH�
5P DIBOHF UIF TUSJOH "goal" UP UIF TUSJOH "foal" ZPV DBO VTF B TUSJOH
��
���� 6TF 4USJOH .FUIPET
TMJDF UP DPODBUFOBUF UIF MFUUFS "f"XJUI FWFSZUIJOH CVU UIF нSTU MFUUFS PG
UIF XPSE "goal"�
>>> my_string = "goal"
>>> my_string = "f" + my_string[1:]
>>> my_string
'foal'
'JSTU BTTJHO UIF TUSJOH "goal" UP UIF WBSJBCMF my_string� 5IFO DPODBUF�
OBUF UIF TMJDF my_string[1:] XIJDI JT UIF TUSJOH "oal" XJUI UIF MFUUFS "f"
UP HFU UIF TUSJOH "foal"� *G ZPVυSF HFUUJOH B EJмFSFOU SFTVMU IFSF NBLF
TVSF ZPVυSF JODMVEJOH UIF : DPMPO DIBSBDUFS BT QBSU PG UIF TUSJOH TMJDF�
3FWJFX &YFSDJTFT
�� $SFBUF B TUSJOH BOE QSJOU JUT MFOHUI VTJOH UIF len() GVODUJPO�
�� $SFBUF UXP TUSJOHT DPODBUFOBUF UIFN BOE QSJOU UIF SFTVMUJOH
TUSJOH�
�� $SFBUF UXP TUSJOH WBSJBCMFT UIFO QSJOU POF PG UIFN BGUFS UIF PUIFS
XJUI B TQBDF BEEFE JO CFUXFFO VTJOH B DPNNB JO ZPVS QSJOU TUBUF�
NFOU�
�� 3FQFBU FYFSDJTF � CVU JOTUFBE PG VTJOH DPNNBT JO print() VTF DPO�
DBUFOBUJPO UP BEE B TQBDF CFUXFFO UIF UXP TUSJOHT�
�� 1SJOU UIF TUSJOH "zing" CZ VTJOH TVCTDSJQUT BOE JOEFY OVNCFST PO
UIF TUSJOH "bazinga" UP TQFDJGZ UIF DPSSFDU SBOHF PG DIBSBDUFST�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��� 6TF 4USJOH .FUIPET
5IF 1ZUIPO QSPHSBNNJOH MBOHVBHF JT BO FYBNQMF PG BO PCKFDU�
PSJFOUFE MBOHVBHF XIJDI NFBOT UIBU EBUB JT TUPSFE JO PCKFDUT� "
TUSJOH JT BO FYBNQMF PG BO PCKFDU� %POυU XPSSZ UPP NVDI BCPVU XIBU JU
NFBOT UP CF BO PCKFDU� 8IBU JT JNQPSUBOU GPS SJHIU OPX JT UIBU PCKFDUT
��
���� 6TF 4USJOH .FUIPET
IBWF CPUI EBUB BOE GVODUJPOTρDBMMFE NFUIPETρUIBU BSF VTFE UP
XPSL XJUI UIF EBUB�
*O UIJT TFDUJPO ZPV XJMM MFBSO BCPVU TPNF PG UIF NFUIPET UIBU DBO CF
VTFE UP NBOJQVMBUF TUSJOHT� *O QBSUJDVMBS ZPV XJMM MFBSO IPX UP DPO�
WFSU B TUSJOH UP VQQFS PS MPXFS DBTF IPX UP SFNPWF XIJUFTQBDF GSPN
TUSJOH BOE IPX UP EFUFSNJOF JG B TUSJOH DPOUBJOT POMZ OVNCFST�
$POWFSUJOH 4USJOH $BTF
5P DPOWFSU B TUSJOH UP BMM MPXFS DBTF MFUUFST ZPVVTF UIF TUSJOHυT .lower()
NFUIPE� 5IJT JT EPOF CZ UBDLJOH .lower() PO UP UIF FOE PG UIF TUSJOH
JUTFMG�
>>> "Arthur Dent".lower()
'arthur dent'
5IF . UFMMT 1ZUIPO UIBU XIBU GPMMPXT JT UIF OBNF PG B NFUIPEρUIF
lowerNFUIPE JO UIJT DBTF� 5IF QBSFOUIFTFT () BGUFS UIFNFUIPEυT OBNF
UFMM 1ZUIPO UP FYFDVUF UIF NFUIPE KVTU MJLF QBSFOUIFTFT BSF VTFE UP
FYFDVUF UIF print() BOE len() GVODUJPOT�
4USJOH NFUIPET EPOυU KVTU XPSL PO TUSJOH MJUFSBMT� :PV DBO VTF UIF
.lower() NFUIPE PO B WBSJBCMF OBNF UIBU JT BTTJHOFE UP B TUSJOH BT
XFMM�
>>> name = "Arthur Dent"
>>> name.lower()
'arthur dent'
5IF DPVOUFSQBSU UP UIF .lower()NFUIPE JT UIF .upper()NFUIPE XIJDI
DPOWFSUT FWFSZ DIBSBDUFS JO B TUSJOH UP VQQFS DBTF�
>>> loud_voice = "Can you hear me yet?"
>>> loud_voice.upper()
'CAN YOU HEAR ME YET?'
��
���� 6TF 4USJOH .FUIPET
$PNQBSF UIF .upper() BOE .lower() TUSJOH NFUIPET UP UIF HFOFSBM�
QVSQPTF len() GVODUJPO ZPV TBX JO UIF MBTU TFDUJPO� "TJEF GSPN UIF
EJмFSFOU SFTVMUT PG UIFTF GVODUJPOT UIF JNQPSUBOU EJTUJODUJPO IFSF JT
IPX UIFZ BSF VTFE�
5IF len() GVODUJPO EPFTOυU CFMPOH UP BO PCKFDU� *G ZPV XBOU UP EFUFS�
NJOF UIF MFOHUI PG UIF loud_voice TUSJOH ZPV DBMM UIF len() GVODUJPO
EJSFDUMZ MJLF UIJT�
>>> len(loud_voice)
20
0O UIF PUIFS IBOE .upper() BOE .lower()NVTU CF VTFE JO DPOKVODUJPO
XJUI B TUSJOH PCKFDU� 5IFZ EP OPU FYJTU JOEFQFOEFOUMZ�
/PUF
5ISPVHIPVU UIJT CPPL ZPV XJMM TFF OVNFSPVT FYBNQMFT PG PC�
KFDUNFUIPET� 8IFO SFGFSSJOH UPNFUIPET JO B QBSBHSBQI PG UFYU
UIFZXJMM CF QSFGBDFEXJUI B . EPU TVDI BT .lower() BOE .upper()�
UP JOEJDBUF UIBU UIFZ BSF NFUIPET PG BO PCKFDU BOE OPU HFOFSBM
QVSQPTF GVODUJPOT�
4PNFUJNFT UIF NFUIPEυT QBSFOU PCKFDU JT JODMVEFE JO UIF SFG�
FSFODF UP NBLF JU DMFBS XIJDI PCKFDU UIF NFUIPE CFMPOHT UPρ
GPS FYBNQMF loud_voice.upper()� )PXFWFS UIJT CPPL VTFT UIF
TIPSUFS .upper() TUZMF PG SFGFSSJOH UP BNFUIPEXIFOFWFS UIF DPO�
UFYU JT DMFBS�
3FNPWJOH8IJUFTQBDF 'SPN B 4USJOH
8IJUFTQBDF JT BOZ DIBSBDUFS UIBU JT QSJOUFE BT CMBOL TQBDF� 5IJT JO�
DMVEFT UIJOHT MJLF TQBDFT BOE MJOF GFFET XIJDI BSF TQFDJBM DIBSBDUFST
UIBU NPWF PVUQVU UP B OFX MJOF�
4PNFUJNFT ZPV OFFE UP SFNPWF XIJUFTQBDF GSPN UIF CFHJOOJOH PS FOE
PG B TUSJOH� 5IJT JT FTQFDJBMMZ VTFGVM XIFO XPSLJOH XJUI TUSJOHT UIBU
��
���� 6TF 4USJOH .FUIPET
DPNF GSPN VTFS JOQVU XIFSF FYUSB XIJUFTQBDF DIBSBDUFST NBZ IBWF
CFFO JOUSPEVDFE CZ BDDJEFOU�
5IFSF BSF UISFF TUSJOHNFUIPET UIBU ZPV DBO VTF UP SFNPWF XIJUFTQBDF
GSPN B TUSJOH� .rstrip() .lstrip() BOE .strip()� 5IF нSTU PG UIFTF
.rstrip() SFNPWFT XIJUFTQBDF GSPN UIF SJHIU TJEF PG B TUSJOH�
>>> name = "Arthur Dent "
>>> name
'Arthur Dent '
>>> name.rstrip()
'Arthur Dent'
*O UIJT FYBNQMF UIF TUSJOH "Arthur Dent " IBT нWF USBJMJOH TQBDFT�
1ZUIPO EPFTOυU SFNPWF BOZ USBJMJOH TQBDFT JO B TUSJOH BVUPNBUJDBMMZ
XIFO UIF TUSJOH JT BTTJHOFE UP B WBSJBCMF� 5IF .rstrip() NFUIPE SF�
NPWFT USBJMJOH TQBDFT GSPN UIF SJHIU�IBOE TJEF PG UIF TUSJOH BOE SF�
UVSOT B OFX TUSJOH "Arthur Dent" XIJDI OP MPOHFS IBT UIF TQBDFT BU UIF
FOE�
5IF .lstrip()NFUIPE XPSLT KVTU MJLF .rstrip() FYDFQU UIBU JU SFNPWFT
XIJUFTQBDF GSPN UIF MFGU�IBOE TJEF PG UIF TUSJOH�
>>> name = " Arthur Dent"
>>> name
' Arthur Dent'
>>> name.lstrip()
'Arthur Dent'
5P SFNPWF XIJUFTQBDF GSPN CPUI UIF MFGU BOE UIF SJHIU TJEFT PG UIF
TUSJOH BU UIF TBNF UJNF VTF UIF .strip() NFUIPE�
>>> name = " Arthur Dent "
>>> name
' Arthur Dent '
>>> name.strip()
'Arthur Dent'
��
���� 6TF 4USJOH .FUIPET
/PUF
/POF PG UIF .rstrip() .lstrip() BOE .strip() NFUIPET SFNPWF
XIJUFTQBDF GSPN UIF NJEEMF PG UIF TUSJOH XIJDI ZPV DBO TFF JO
UIF QSFWJPVT FYBNQMFT CFDBVTF UIF TQBDF CFUXFFO ψ"SUIVSω BOE
ψ%FOUω JT QSFTFSWFE FBDI UJNF�
%FUFSNJOF JG B 4USJOH 4UBSUT PS &OET8JUI B 4USJOH
" DPNNPO QSPCMFN XIFO XPSLJOH XJUI TUSJOHT JT UP EFUFSNJOF JG
B HJWFO TUSJOH TUBSUT XJUI PS FOET XJUI DFSUBJO DIBSBDUFST� :PV DBO
VTF UXP TUSJOH NFUIPET UP TPMWF UIJT QSPCMFN� .startswith() BOE
.endswith()�
-FUυT MPPL BU BO FYBNQMF� $POTJEFS UIF TUSJOH "Enterprise"� )FSFυT IPX
ZPV VTF .startswith() UP EFUFSNJOF JG UIF TUSJOH TUBSUT XJUI UIF MFUUFST
"e" BOE "n"�
>>> starship = "Enterprise"
>>> starship.startswith("en")
False
:PVNVTU UFMM .startswith()XIBU DIBSBDUFST UP TFBSDI GPS CZ QSPWJEJOH
B TUSJOH DPOUBJOJOH UIPTF DIBSBDUFST� 4P UP EFUFSNJOF JG "Enterprise"
TUBSUT XJUI UIF MFUUFST "e" BOE "n" ZPV DBMM .startswith("en")� 5IJT SF�
UVSOTώ False 8IZ EP ZPV UIJOL UIBU JT
*G ZPV HVFTTFE UIBU .startswith("en") SFUVSOT False CFDBVTF "En-
terprise" TUBSUT XJUI B DBQJUBM "E" ZPVυSF BCTPMVUFMZ SJHIU� 5IF
.startswith() NFUIPE JT DBTF�TFOTJUJWF� 5P HFU .startswith() UP
SFUVSO True ZPV OFFE UP QSPWJEF JU XJUI UIF TUSJOH "En"�
>>> starship.startswith("En")
True
5IF .endswith() NFUIPE JT VTFE UP EFUFSNJOF JG B TUSJOH FOET XJUI DFS�
UBJO DIBSBDUFST�
��
���� 6TF 4USJOH .FUIPET
>>> starship.endswith("rise")
True
+VTU MJLF .startswith() UIF .endswith() NFUIPE JT DBTF�TFOTJUJWF�
>>> starship.endswith("risE")
False
/PUF
5IF True BOE False WBMVFT BSF OPU TUSJOHT� 5IFZ BSF B TQFDJBM LJOE
PG EBUB UZQF DBMMFE B CPPMFBO WBMVF� :PVXJMM MFBSONPSF BCPVU
CPPMFBO WBMVFT JO $IBQUFS ��
4USJOH .FUIPET BOE *NNVUBCJMJUZ
3FDBMM GSPN UIF QSFWJPVT TFDUJPO UIBU TUSJOHT BSF JNNVUBCMFρUIFZ
DBOυU CF DIBOHFE PODF UIFZ IBWF CFFO DSFBUFE� .PTU TUSJOH NFUIPET
UIBU BMUFS B TUSJOH MJLF .upper() BOE .lower() BDUVBMMZ SFUVSO DPQJFT PG
UIF PSJHJOBM TUSJOH XJUI UIF BQQSPQSJBUF NPEJнDBUJPOT�
*G ZPV BSFOυU DBSFGVM UIJT DBO JOUSPEVDF TVCUMF CVHT JOUP ZPVS QSPHSBN�
5SZ UIJT PVU JO *%-&υT JOUFSBDUJWF XJOEPX�
>>> name = "Elena"
>>> name.upper()
'ELENA'
>>> name
'Elena'
8IFO ZPV DBMM name.upper() OPUIJOH BCPVU name BDUVBMMZ DIBOHFT� *G
ZPV OFFE UP LFFQ UIF SFTVMU ZPV OFFE UP BTTJHO JU UP B WBSJBCMF�
>>> name = "Elena"
>>> name = name.upper()
��
���� 6TF 4USJOH .FUIPET
>>> name
'ELENA'
name.upper() SFUVSOT B OFX TUSJOH "ELENA" XIJDI JT SF�BTTJHOFE UP UIF
name WBSJBCMF� 5IJT PWFSSJEFT UIF PSJHJOBM TUSJOH "Elena" BTTJHOFE UP
"name"�
6TF *%-& UP %JTDPWFS "EEJUJPOBM 4USJOH .FUIPET
4USJOHT IBWF MPUT PG NFUIPET BTTPDJBUFE UP UIFN� 5IF NFUIPET JOUSP�
EVDFE JO UIJT TFDUJPO POMZ TDSBUDI UIF TVSGBDF� *%-& DBO BDUVBMMZ IFMQ
ZPV нOE OFX TUSJOH NFUIPET� 5P TFF IPX нSTU BTTJHO B TUSJOH MJUFSBM
UP B WBSJBCMF JO UIF JOUFSBDUJWF XJOEPX�
>>> my_string = "kerfuffle"
5ZQF my_string GPMMPXFE CZ B QFSJPE CVU EP OPU IJU Enter� :PV TIPVME
TFF UIF GPMMPXJOH JO UIF JOUFSBDUJWF XJOEPX�
>>> my_string.
/PX IJU Ctrl+Space� *%-& EJTQMBZT B MJTU PG FWFSZ TUSJOH NFUIPE UIBU
ZPV DBO TDSPMM UISPVHI XJUI UIF BSSPX LFZT�
" SFMBUFE TIPSUDVU JO *%-& JT UIF BCJMJUZ UP нMM JO UFYU BVUPNBUJDBMMZ
XJUIPVU IBWJOH UP UZQF JO MPOH OBNFT CZ IJUUJOH Tab� 'PS JOTUBODF JG
ZPV POMZ UZQF JO my_string.u BOE UIFO IJU UIF Tab LFZ *%-& BVUPNBUJ�
DBMMZ нMMT JO my_string.upper CFDBVTF UIFSF JT POMZ POF NFUIPE CFMPOH�
JOH UP my_string UIBU CFHJOT XJUI B ψV�ω
5IJT FWFO XPSLT XJUI WBSJBCMF OBNFT� 5SZ UZQJOH JO KVTU UIF нSTU GFX
MFUUFST PG my_string BOE BTTVNJOH ZPV EPOυU IBWF BOZ PUIFS OBNFT BM�
SFBEZ EFнOFE UIBU TIBSF UIPTF нSTU MFUUFST *%-& DPNQMFUFT UIF OBNF
my_string GPS ZPV XIFO ZPV IJU UIF 5"# LFZ�
��
���� *OUFSBDU 8JUI 6TFS *OQVU
3FWJFX &YFSDJTFT
�� 8SJUF B TDSJQU UIBU DPOWFSUT UIF GPMMPXJOH TUSJOHT UP MPXFSDBTF� "An-
imals" "Badger" "Honey Bee" "Honeybadger"� 1SJOU FBDI MPXFSDBTF
TUSJOH�
�� 3FQFBU &YFSDJTF � CVU DPOWFSU FBDI TUSJOH UP VQQFSDBTF JOTUFBE PG
MPXFSDBTF�
�� 8SJUF B TDSJQU UIBU SFNPWFT XIJUFTQBDF GSPN UIF GPMMPXJOH TUSJOHT�
string1 = " Filet Mignon"
string2 = "Brisket "
string3 = " Cheeseburger "
1SJOU PVU UIF TUSJOHT XJUI UIF XIJUFTQBDF SFNPWFE�
�� 8SJUF B TDSJQU UIBU QSJOUT PVU UIF SFTVMU PG .startswith("be") PO FBDI
PG UIF GPMMPXJOH TUSJOHT�
string1 = "Becomes"
string2 = "becomes"
string3 = "BEAR"
string4 = " bEautiful"
�� 6TJOH UIF TBNF GPVS TUSJOHT GSPN &YFSDJTF � XSJUF B TDSJQU UIBU
VTFT TUSJOH NFUIPET UP BMUFS FBDI TUSJOH TP UIBU .startswith("be")
SFUVSOT True GPS BMM PG UIFN�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��� *OUFSBDU 8JUI 6TFS *OQVU
/PX UIBU ZPVυWF TFFO IPX UP XPSL XJUI TUSJOH NFUIPET MFUυT NBLF
UIJOHT JOUFSBDUJWF� *O UIJT TFDUJPO ZPVXJMM MFBSO IPX UP HFU TPNF JOQVU
GSPN B VTFS XJUI UIF input() GVODUJPO� :PVυMM XSJUF B QSPHSBN UIBU BTLT
B VTFS UP JOQVU TPNF UFYU BOE UIFO EJTQMBZ UIBU UFYU CBDL UP UIFN JO
VQQFSDBTF�
5P VTF UIF input() GVODUJPO ZPV NVTU TQFDJGZ B QSPNQU� 5IF QSPNQU
JT KVTU B TUSJOH UIBU ZPV QVU JO CFUXFFO UIF QBSFOUIFTFT PG input()� *U
��
���� *OUFSBDU 8JUI 6TFS *OQVU
DBO CF BOZUIJOH ZPV XBOU� B XPSE B TZNCPM B QISBTFρBOZUIJOH UIBU
JT B WBMJE 1ZUIPO TUSJOH�
5IF input() GVODUJPO EJTQMBZT UIF QSPNQU BOEXBJUT GPS UIF VTFS UP UZQF
TPNFUIJOH PO UIFJS LFZCPBSE� 8IFO UIF VTFS IJUT Enter input() SF�
UVSOT UIFJS JOQVU BT B TUSJOH UIBU DBO CF BTTJHOFE UP B WBSJBCMF BOE
VTFE UP EP TPNFUIJOH JO ZPVS QSPHSBN�
5P TFF IPX input() XPSLT TBWF BOE SVO UIF GPMMPXJOH TDSJQU�
prompt = "Hey, what's up? "
user_input = input(prompt)
print("You said:", user_input)
8IFO ZPV SVO UIJT TDSJQU ZPVυMM TFF Hey, what's up? EJTQMBZFE JO UIF
JOUFSBDUJWF XJOEPXXJUI B CMJOLJOH DVSTPS� 5IF TJOHMF TQBDF BU UIF FOE
PG UIF TUSJOH "Hey, what's up " NBLFT TVSF UIBU XIFO UIF VTFS TUBSUT
UP UZQF UIF UFYU JT TFQBSBUFE GSPN UIF QSPNQU XJUI B TQBDF� 8IFO
ZPV UZQF B SFTQPOTF BOE QSFTT Enter ZPVS SFTQPOTF JT BTTJHOFE UP UIF
user_input WBSJBCMF�
)FSFυT B TBNQMF SVO PG UIF QSPHSBN�
Hey, what's up? Mind your own business.
You said: Mind your own business.
0ODF ZPV IBWF JOQVU GSPN B VTFS ZPV DBO EP TPNFUIJOH XJUI JU� 'PS
FYBNQMF UIF GPMMPXJOH TDSJQU UBLFT VTFS JOQVU BOE ψTIPVUTω JU CBDL
CZ DPOWFSUJOH UIF JOQVU UP VQQFSDBTF XJUI .upper() BOE QSJOUJOH UIF
SFTVMU�
response = input("What should I shout? ")
response = response.upper()
print("Well, if you insist...", response)
��
���� $IBMMFOHF� 1JDL "QBSU :PVS 6TFSυT *OQVU
3FWJFX &YFSDJTFT
�� 8SJUF B TDSJQU UIBU UBLFT JOQVU GSPN UIF VTFS BOE EJTQMBZT UIBU JO�
QVU CBDL�
�� 8SJUF B TDSJQU UIBU UBLFT JOQVU GSPN UIF VTFS BOE EJTQMBZ UIF JOQVU
JO MPXFSDBTF�
�� 8SJUF B TDSJQU UIBU UBLFT JOQVU GSPN UIF VTFS BOE EJTQMBZT UIF OVN�
CFS PG DIBSBDUFST JOQVUUFE�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��� $IBMMFOHF� 1JDL "QBSU :PVS 6TFSφT
*OQVU
8SJUF B TDSJQU OBNFE first_letter.py UIBU нSTU QSPNQUT UIF VTFS GPS
JOQVU CZ VTJOH UIF TUSJOH� Tell me your password: 5IF TDSJQU TIPVME
UIFO EFUFSNJOF UIF нSTU MFUUFS PG UIF VTFSυT JOQVU DPOWFSU UIBU MFUUFS
UP VQQFS�DBTF BOE EJTQMBZ JU CBDL�
'PS FYBNQMF JG UIF VTFS JOQVU JT "no" UIFO UIF QSPHSBN TIPVME SFTQPOE
MJLF UIJT�
The first letter you entered was: N
'PS OPX JUυT PLBZ JG ZPVS QSPHSBN DSBTIFT XIFO UIF VTFS FOUFST OPUI�
JOH BT JOQVUρUIBU JT UIFZ KVTU IJU Enter JOTUFBE PG UZQJOH TPNFUIJOH JO�
:PVυMM MFBSO BCPVU B DPVQMF PG XBZT ZPV DBO EFBM XJUI UIJT TJUVBUJPO JO
BO VQDPNJOH DIBQUFS�
-FBWF GFFECBDL PO UIJT TFDUJPO |
��� 8PSLJOH8JUI 4USJOHT BOE /VNCFST
8IFOZPV HFU VTFS JOQVU VTJOH UIF input() GVODUJPO UIF SFTVMU JT BMXBZT
B TUSJOH� 5IFSF BSFNBOZ PUIFS UJNFT XIFO JOQVU JT HJWFO UP B QSPHSBN
��
���� 8PSLJOH 8JUI 4USJOHT BOE /VNCFST
BT B TUSJOH� 4PNFUJNFT UIPTF TUSJOHT DPOUBJO OVNCFST UIBU OFFE UP CF
GFE JOUP DBMDVMBUJPOT�
*O UIJT TFDUJPO ZPV XJMM MFBSO IPX UP EFBM XJUI TUSJOHT PG OVNCFST� :PV
XJMM TFF IPXBSJUINFUJD PQFSBUJPOTXPSL PO TUSJOHT BOEIPX UIFZ PGUFO
MFBE UP TVSQSJTJOH SFTVMUT� :PV XJMM BMTP MFBSO IPX UP DPOWFSU CFUXFFO
TUSJOHT BOE OVNCFS UZQFT�
4USJOHT BOE "SJUINFUJD 0QFSBUPST
:PVυWF TFFO UIBU TUSJOH PCKFDUT DBO IPME NBOZ UZQFT PG DIBSBDUFST JO�
DMVEJOH OVNCFST� )PXFWFS EPOυU DPOGVTF TUSJOH ψOVNCFSTω XJUI BD�
UVBM OVNCFST� 'PS JOTUBODF USZ UIJT CJU PG DPEF PVU JO *%-&υT JOUFSBD�
UJWF XJOEPX�
>>> num = "2"
>>> num + num
'22'
5IF + PQFSBUPS XIFO VTFE XJUI UXP TUSJOHT DPODBUFOBUFT TUSJOHT UP�
HFUIFS� 4P UIF SFTVMU PG "2" + "2" JT "22" OPU "4"�
4USJOHT DBO CF ψNVMUJQMJFEω CZ BO JOUFHFS� 5ZQF UIF GPMMPXJOH JOUP UIF
JOUFSBDUJWF XJOEPX�
>>> num = "12"
>>> num * 3
'121212'
5IF FYQSFTTJPO num * 3 DPODBUFOBUFT UIF TUSJOH SFGFSFODFE CZ "12"XJUI
JUTFMG � UJNFT BOE SFUVSOT UIF TUSJOH "121212"� 5P DPNQBSF UIJT PQFSB�
UJPO UP BSJUINFUJD XJUI OVNCFST OPUJDF UIBU "12" * 3 = "12" + "12" +
"12"� *O PUIFS XPSET NVMUJQMZJOH B TUSJOH CZ BO JOUFHFS n DPODBUFOBUFT
UIBU TUSJOH XJUI JUTFMG n UJNFT�
5IF OVNCFS PO UIF SJHIU�IBOE TJEF PG UIF FYQSFTTJPO num * 3 DBO CF
NPWFE UP UIF MFGU BOE UIF SFTVMU JT VODIBOHFE�
��
���� 8PSLJOH 8JUI 4USJOHT BOE /VNCFST
>>> 3 * num
'121212'
8IBU EP ZPV UIJOL IBQQFOT JG ZPV VTF UIF * PQFSBUPS CFUXFFO UXP
TUSJOHT 5ZQF "12" * "3" JO JO UIF JOUFSBDUJWF XJOEPX BOE QSFTT En-
ter�
>>> "12" * "3"
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: can't multiply sequence by non-int of type 'str'
1ZUIPO UISPXT B TypeError BOE UFMMT ZPV UIBU ZPV DBOυU NVMUJQMZ B TF�
RVFODF CZ B OPO�JOUFHFS� 8IFO UIF * PQFSBUPS JT VTFE XJUI B TUSJOH
PO FJUIFS UIF MFGU PS UIF SJHIU TJEF JU BMXBZT FYQFDUT BO JOUFHFS PO UIF
PUIFS TJEF�
/PUF
" TFRVFODF JT BOZ 1ZUIPO PCKFDU UIBU TVQQPSUT BDDFTTJOH FMF�
NFOUT CZ TVCTDSJQU� 4USJOHT BSF TFRVFODFT� :PVXJMM MFBSO BCPVU
PUIFS TFRVFODF UZQFT JO $IBQUFS ��
8IBU EP ZPV UIJOL IBQQFOT XIFO ZPV USZ UP BEE B TUSJOH UP B OVNCFS
>>> "3" + 3
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: can only concatenate str (not "int") to str
"HBJO 1ZUIPO UISPXT B TypeError CFDBVTF UIF + PQFSBUPS FYQFDUT CPUI
UIJOHT PO FJUIFS TJEF PG JU UP CF PG UIF TBNF UZQF� *G BOZ POF PG UIF
PCKFDUT PO FJUIFS TJEF PG + JT B TUSJOH 1ZUIPO USJFT UP QFSGPSN TUSJOH
DPODBUFOBUJPO� "EEJUJPO XJMM POMZ CF QFSGPSNFE JG CPUI PCKFDUT BSF
OVNCFST� 4P UP BEE "3" + 3 BOE HFU 6 ZPV NVTU нSTU DPOWFSU UIF
TUSJOH "3" UP B OVNCFS�
��
���� 8PSLJOH 8JUI 4USJOHT BOE /VNCFST
$POWFSUJOH 4USJOHT UP /VNCFST
5IF TypeError FSSPST ZPV TBX JO UIF QSFWJPVT TFDUJPO IJHIMJHIU B DPN�
NPO QSPCMFN FODPVOUFSFE XIFO XPSLJOH XJUI VTFS JOQVU� UZQF NJT�
NBUDIFT XIFO USZJOH UP VTF UIF JOQVU JO BO PQFSBUJPO UIBU SFRVJSFT B
OVNCFS BOE OPU B TUSJOH�
-FUυT MPPL BU BO FYBNQMF� 4BWF BOE SVO UIF GPMMPXJOH TDSJQU�
num = input("Enter a number to be doubled: ")
doubled_num = num * 2
print(doubled_num)
8IFO ZPV FOUFS B OVNCFS TVDI BT � ZPV FYQFDU UIF PVUQVU UP CF � CVU
JO UIJT DBTF ZPV HFU ��� 3FNFNCFS input() BMXBZT SFUVSOT B TUSJOH TP
JG ZPV JOQVU � UIFO num JT BTTJHOFE UP UIF TUSJOH "2" OPU UIF JOUFHFS 2�
5IFSFGPSF UIF FYQSFTTJPO num * 2 SFUVSOT UIF TUSJOH "2" DPODBUFOBUFE
XJUI JUTFMG XIJDI JT "22"�
*O PSEFS UP QFSGPSN BSJUINFUJD PO OVNCFST UIBU BSF DPOUBJOFE JO B
TUSJOH ZPV NVTU нSTU DPOWFSU UIFN GSPN B TUSJOH UZQF UP B OVNCFS
UZQF� 5IFSF BSF UXP XBZT UP EP UIJT� int() BOE float()�
int() TUBOET GPS ψJOUFHFSω BOE DPOWFSUT PCKFDUT JOUP XIPMF OVNCFST
XIJMF float() TUBOET GPS ψGMPBUJOH�QPJOU OVNCFSω BOE DPOWFSUT PCKFDUT
JOUP OVNCFST XJUI EFDJNBM QPJOUT� )FSFυT XIBU VTJOH UIFN MPPLT MJLF
JO UIF JOUFSBDUJWF XJOEPX�
>>> int("12")
12
>>> float("12")
12.0
/PUJDF IPX float() BEET B EFDJNBM QPJOU UP UIF OVNCFS� 'MPBUJOH�
QPJOU OVNCFST BMXBZT IBWF BU MFBTU POF EFDJNBM QMBDF PG QSFDJTJPO� 'PS
UIJT SFBTPO ZPV DBOυU DIBOHF B TUSJOH UIBU MPPLT MJLF B GMPBUJOH�QPJOU
��
���� 8PSLJOH 8JUI 4USJOHT BOE /VNCFST
OVNCFS JOUP BO JOUFHFS CFDBVTF ZPV XPVME MPTF FWFSZUIJOH BGUFS UIF
EFDJNBM QPJOU�
>>> int("12.0")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '12.0'
&WFO UIPVHI UIF FYUSB � BGUFS UIF EFDJNBM QMBDF EPFTOυU BEE BOZ WBMVF
UP UIF OVNCFS 1ZUIPO XPOυU DIBOHF ���� JOUP �� CFDBVTF JU XPVME
SFTVMU JO UIF MPTT PG QSFDJTJPO�
-FUυT SFWJTJU UIF TDSJQU GSPN UIF CFHJOOJOH PG UIJT TFDUJPO BOE TFF IPX
UP нY JU� )FSFυT UIF TDSJQU BHBJO�
num = input("Enter a number to be doubled: ")
doubled_num = num * 2
print(doubled_num)
5IF JTTVF MJFT JO UIF MJOF doubled_num = num * 2 CFDBVTF num SFGFSFODFT
B TUSJOH BOE 2 JT BO JOUFHFS� :PV DBO нY UIF QSPCMFN CZ XSBQQJOH num
XJUI FJUIFS int() PS float()� 4JODF UIF QSPNQUT BTLT UIF VTFS UP JOQVU B
OVNCFS BOE OPU TQFDJнDBMMZ BO JOUFHFS MFUυT DPOWFSU num UP B GMPBUJOH�
QPJOU OVNCFS�
num = input("Enter a number to be doubled: ")
doubled_num = float(num) * 2
print(doubled_num)
/PX XIFO ZPV SVO UIJT TDSJQU BOE JOQVU � ZPV HFU ��� BT FYQFDUFE�
5SZ JU PVU�
��
���� 8PSLJOH 8JUI 4USJOHT BOE /VNCFST
$POWFSUJOH /VNCFST UP 4USJOHT
4PNFUJNFT ZPV OFFE UP DPOWFSU B OVNCFS UP B TUSJOH� :PV NJHIU EP
UIJT GPS FYBNQMF JG ZPV OFFE UP CVJME B TUSJOH GSPN TPNF QSF�FYJTUJOH
WBSJBCMFT UIBU BSF BTTJHOFE UP OVNFSJD WBMVFT�
"T ZPVυWF BMSFBEZ TFFO UIF GPMMPXJOH QSPEVDFT B TypeError�
>>> num_pancakes = 10
>>> "I am going to eat " + num_pancakes + " pancakes."
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: can only concatenate str (not "int") to str
4JODF num_pancakes JT B OVNCFS 1ZUIPO DBOυU DPODBUFOBUF JU XJUI UIF
TUSJOH "I'm going to eat"� 5P CVJME UIF TUSJOH ZPV OFFE UP DPOWFSU
num_pancakes UP B TUSJOH VTJOH str()�
>>> num_pancakes = 10
>>> "I am going to eat " + str(num_pancakes) + " pancakes."
'I am going to eat 10 pancakes.'
:PV DBO BMTP DBMM str() PO B OVNCFS MJUFSBM�
>>> "I am going to eat " + str(10) + " pancakes."
'I am going to eat 10 pancakes.'
str() DBO FWFO IBOEMF BSJUINFUJD FYQSFTTJPOT�
>>> total_pancakes = 10
>>> pancakes_eaten = 5
>>> "Only " + str(total_pancakes - pancakes_eaten) + " pancakes left."
"Only 5 pancakes left."
:PVυSF OPU MJNJUFE UP OVNCFST XIFO VTJOH str()� :PV DBO QBTT JU BMM
TPSUT PG PCKFDUT UP HFU UIFJS TUSJOH SFQSFTFOUBUJPOT�
��
���� 8PSLJOH 8JUI 4USJOHT BOE /VNCFST
>>> str(print)
'<built-in function print>'
>>> str(int)
"<class 'int'>"
>>> str(float)
"<class 'float'>"
5IFTF FYBNQMFTNBZ OPU TFFN WFSZ VTFGVM CVU UIFZ JMMVTUSBUF IPX GMFY�
JCMF str() JT�
*O UIF OFYU TFDUJPO ZPVυMM MFBSO IPX UP GPSNBU TUSJOHT OFBUMZ UP EJTQMBZ
WBMVFT JO B OJDF SFBEBCMFNBOOFS� #FGPSF ZPVNPWF PO UIPVHI DIFDL
ZPVS VOEFSTUBOEJOH XJUI UIF GPMMPXJOH SFWJFX FYFSDJTFT�
3FWJFX &YFSDJTFT
�� $SFBUF B TUSJOH DPOUBJOJOH BO JOUFHFS UIFO DPOWFSU UIBU TUSJOH JOUP
BO BDUVBM JOUFHFS PCKFDU VTJOH int()� 5FTU UIBU ZPVS OFX PCKFDU JT
B OVNCFS CZ NVMUJQMZJOH JU CZ BOPUIFS OVNCFS BOE EJTQMBZJOH UIF
SFTVMU�
�� 3FQFBU UIF QSFWJPVT FYFSDJTF CVU VTF B GMPBUJOH�QPJOU OVNCFS BOE
float()�
�� $SFBUF B TUSJOH PCKFDU BOE BO JOUFHFS PCKFDU UIFO EJTQMBZ UIFN TJEF�
CZ�TJEF XJUI B TJOHMF QSJOU TUBUFNFOU CZ VTJOH UIF str() GVODUJPO�
�� 8SJUF B TDSJQU UIBU HFUT UXP OVNCFST GSPN UIF VTFS VTJOH UIF
input() GVODUJPO UXJDF NVMUJQMJFT UIF OVNCFST UPHFUIFS BOE
EJTQMBZT UIF SFTVMU� *G UIF VTFS FOUFST � BOE � ZPVS PVUQVU TIPVME
MPPL MJLF�
The product of 2 and 4 is 8.0.
-FBWF GFFECBDL PO UIJT TFDUJPO |
��
5IJT JT BO &BSMZ "DDFTT WFSTJPO PG ω1ZUIPO #BTJDT�
" 1SBDUJDBM *OUSPEVDUJPO UP 1ZUIPO �ϊ
8JUI ZPVS IFMQ XF DBO NBLF UIJT CPPL FWFO CFUUFS�
"U UIF FOE PG FBDI TFDUJPO PG UIF CPPL ZPVυMM нOE B ψNBHJDBMω GFFECBDL
MJOL� $MJDLJOH UIF MJOL UBLFT ZPV UP BO POMJOF GFFECBDL GPSN XIFSF
ZPV DBO TIBSF ZPVS UIPVHIUT XJUI VT�
8F XFMDPNF BOZ BOE BMM GFFECBDL PS TVHHFTUJPOT GPS JN�
QSPWFNFOU ZPV NBZ IBWF�
1MFBTF GFFM GSFF UP CF BT UFSTF PS EFUBJMFE BT ZPV TFF нU� "MM GFFECBDL
JT TUPSFE BOPOZNPVTMZ CVU ZPV DBO DIPPTF UP MFBWF ZPVS OBNF BOE
DPOUBDU JOGPSNBUJPO TPXF DBO GPMMPXVQPSNFOUJPO ZPVPOPVS ψ5IBOL
:PVω QBHF�
8F VTF B EJмFSFOU GFFECBDL MJOL GPS FBDI TFDUJPO TP XFυMM BMXBZT LOPX
XIJDI QBSU PG UIF CPPL ZPVS OPUFT SFGFS UP�
5IBOL ZPV GPS IFMQJOH VTNBLF UIJT CPPL BO FWFONPSF WBMVBCMF MFBSO�
JOH SFTPVSDF GPS UIF 1ZUIPO DPNNVOJUZ�
ρ %BO #BEFS &EJUPS�JO�$IJFG BU 3FBM 1ZUIPO
Recommended