Python Merkkijonot: korvaa, liity, jaa, Reverse
โก รlykรคs yhteenveto
Python Merkkijonot ovat muuttumattomia merkkijonoja, joissa on useita sisรครคnrakennettuja metodeja tekstinkรคsittelyyn. Alla olevat esimerkit havainnollistavat viipalointia, merkkijono-operaattoreita, replace()-, upper()- ja lower()-, join()-, reversing- ja split()-funktioita ajettavan koodin avulla.

In Python, kaikki on olio, ja merkkijonotkin ovat olioita. Python merkkijonon voi luoda yksinkertaisesti laittamalla merkkejรค lainausmerkkeihin.
Esimerkiksi:
var = "Hei maailma!"
Arvojen kรคyttรคminen merkkijonoissa
Python ei tue merkkityyppiรค; nรคitรค kรคsitellรครคn yhden pituisina merkkijonoina, joita pidetรครคn myรถs alimerkkijonoina.
Kรคytรคmme viipalointiin hakasulkeita yhdessรค indeksin tai indeksien kanssa saadaksemme alimerkkijonon.
var1 = "Guru99!"
var2 = "Software Testing"
print ("var1[0]:",var1[0])
print ("var2[1:5]:",var2[1:5])
lรคhtรถ:
var1[0]: G var2[1:5]: oftw
Eri kieliรค OperaTors
On olemassa erilaisia โโmerkkijono-operaattoreita, joita voidaan kรคyttรครค eri tavoin, kuten eri merkkijonojen yhdistรคmiseen.
Oletetaan, ettรค jos a=guru ja b=99, niin a+b= โguru99โ. Vastaavasti, jos kรคytรคt a*2:ta, se antaa tulokseksi โGuruGuru". Samoin voit kรคyttรครค merkkijonossa muita operaattoreita.
| OperaTor | Tuotetiedot | esimerkki |
|---|---|---|
| [] | Viipale โ se antaa kirjaimen annetusta indeksistรค | a[1] antaa sanasta "u"-pรครคtteen Guru sellaisenaan (0=G, 1=u, 2=r ja 3=u)
x="Guru" print (x[1]) |
| [ : ] | Alueen siivu โ se antaa annetun alueen merkit | x [1:3] se antaa sanasta โurโ-pรครคtteen GuruMuista, ettรค se ei huomioi nollaa, joka on G, vaan sen jรคlkeistรค sanaa, joka on ur.
x="Guru" print (x[1:3]) |
| in | Jรคsenyys โ palauttaa arvon true, jos annetussa merkkijonossa on kirjain | sinรค olet lรคsnรค sanassa Guru ja siten se antaa arvon 1 (tosi)
x="Guru"
print ("u" in x)
|
| ei mukana | Jรคsenyys โ palauttaa arvon true, jos annetussa merkkijonossa ei ole kirjainta | l ei ole lรคsnรค sanassa Guru ja siten se antaa 1
x="Guru"
print ("l" not in x)
|
| r/R | Raw-merkkijono estรครค pakomerkkien todellisen merkityksen. | Tulosta r'\n' tulosteet \n ja tulosta R'/n' tulosteet \n |
| % โ Kรคytetรครคn merkkijonomuodossa | %r โ Lisรครค objektin kanonisen merkkijonoesityksen (eli repr(o)) %s โ Lisรครค objektin esitysmerkkijonoesityksen (eli str(o)) %d โ Muotoilee numeron nรคyttรถรค varten | Tรคmรคn koodin tulos on "guru 99".
name = 'guru'
number = 99
print ('%s %d' % (name,number))
|
| + | Se ketjuttaa 2 merkkijonoa | Se ketjuttaa merkkijonoja ja antaa tuloksen
x="Guru" y="99" print (x+y) |
| * | Toisto: | Se tulostaa merkin kahdesti.
x="Guru" y="99" print (x*2) |
Muutama esimerkki lisรครค
Voit pรคivittรครค Python merkkijonoa siirtรคmรคllรค muuttuja toiseen merkkijonoon. Uusi arvo voi liittyรค edelliseen arvoon tai kokonaan eri merkkijonoon.
x = "Hello World!" print(x[:6]) print(x[0:6] + "Guru99")
lรคhtรถ:
Hello Hello Guru99
Huomautuksia: โ Viipaleella [:6] tai [0:6] on sama vaikutus.
Python Merkkijono korvaa() -menetelmรค
replace()-metodi palauttaa kopion merkkijonosta, jossa vanhan merkkijonon arvot on korvattu uudella arvolla.
oldstring = 'I like Guru99'
newstring = oldstring.replace('like', 'love')
print(newstring)
lรคhtรถ:
I love Guru99
Isojen ja pienten kirjainten merkkijonojen vaihtaminen
In Python, voit jopa vaihtaa merkkijonon isoihin tai pieniin kirjaimiin.
string="python at guru99" print(string.upper())
lรคhtรถ:
PYTHON AT GURU99
Samoin voit kรคyttรครค myรถs muita funktioita, kuten capitalize().
string="python at guru99" print(string.capitalize())
lรคhtรถ:
Python at guru99
Voit myรถs muuntaa merkkijonosi pieniksi kirjaimiksi.
string="PYTHON AT GURU99" print(string.lower())
lรคhtรถ:
python at guru99
"Liity"-funktion kรคyttรคminen merkkijonolle
join()-funktio on joustavampi tapa yhdistรครค merkkijonoja. Join()-funktiolla voit lisรคtรค merkkijonoon minkรค tahansa merkin.
Jos esimerkiksi haluat lisรคtรค kaksoispisteen (:) merkkijonon jokaisen merkin jรคlkeenPython", voit kรคyttรครค seuraavaa koodia.
print(":".join("Python"))
lรคhtรถ:
P:y:t:h:o:n
Reversing String
Kรคyttรคmรคllรค reversed()-funktiota voit kรครคntรครค merkkijonon pรคinvastaiseksi. Jos meillรค on esimerkiksi merkkijono โ12345โ, kรคytรคmme reversed()-funktion koodia alla olevan mukaisesti.
string="12345"
print(''.join(reversed(string)))
lรคhtรถ:
54321
Split Strings
Jaettu merkkijono on toinen funktio, jota voidaan kรคyttรครค PythonKatsotaanpa merkkijonoa โguru99 ura guru99โ. Ensin jaamme merkkijonon komennolla word.split ja saamme tuloksen.
word="guru99 career guru99"
print(word.split(' '))
lรคhtรถ:
['guru99', 'career', 'guru99']
Ymmรคrtรครคksemme tรคtรค paremmin, tarkastelemme vielรค yhtรค esimerkkiรค merkkijonon jakamisesta. Vรคlilyรถnnin (' ') sijaan korvaamme sen merkkijonolla ('r'), ja se jakaa merkkijonon aina, kun merkkijonossa mainitaan 'r'.
word="guru99 career guru99"
print(word.split('r'))
lรคhtรถ:
['gu', 'u99 ca', 'ee', ' gu', 'u99']
Tรคrkeรค huomautus: In Python, merkkijonot ovat muuttumattomia.
Harkitse seuraavaa koodia:
x = "Guru99"
x.replace("Guru99","Python")
print(x)
lรคhtรถ:
Guru99
Se palaa vielรค Guru99. Tรคmรค johtuu siitรค, ettรค x.replace(โGuru99", "Pythonโ) palaa kopio X:stรค tehtyine korvauksineen.
Sinun on kรคytettรคvรค seuraavaa koodia muutosten havaitsemiseen.
x = "Guru99"
x = x.replace("Guru99","Python")
print(x)
lรคhtรถ:
Python
Yllรค olevat koodit ovat Python 3 esimerkkiรค. Jos haluat suorittaa ne Python 2, harkitse seuraavaa koodia.
Python 2-esimerkki
#Accessing Values in Strings
var1 = "Guru99!"
var2 = "Software Testing"
print "var1[0]:",var1[0]
print "var2[1:5]:",var2[1:5]
#Some more examples
x = "Hello World!"
print x[:6]
print x[0:6] + "Guru99"
#Python String replace() Method
oldstring = 'I like Guru99'
newstring = oldstring.replace('like', 'love')
print newstring
#Changing upper and lower case strings
string="python at guru99"
print string.upper()
string="python at guru99"
print string.capitalize()
string="PYTHON AT GURU99"
print string.lower()
#Using "join" function for the string
print":".join("Python")
#Reversing String
string="12345"
print''.join(reversed(string))
#Split Strings
word="guru99 career guru99"
print word.split(' ')
word="guru99 career guru99"
print word.split('r')
x = "Guru99"
x.replace("Guru99","Python")
print x
x = "Guru99"
x = x.replace("Guru99","Python")
print x
lรคhtรถ:
var1[0]: G var2[1:5]: oftw Hello Hello Guru99 I love Guru99 PYTHON AT GURU99 Python at guru99 python at guru99 P:y:t:h:o:n 54321 ['guru99', 'career', 'guru99'] ['gu', 'u99 ca', 'ee', ' gu', 'u99'] Guru99 Python
Python on ottanut kรคyttรถรถn .format()-funktion, joka poistaa hankalan %d:n ja niin edelleen kรคytรถn merkkijonojen muotoilussa.
ยป Lisรคtietoja Python merkkijono split()
