Python Strings - Yfirlit yfir helstu strengjaaðgerðir

Strengir eru ein af grunngagnategundunum í Python. Python strengir eru sambland af hvaða fjölda stafa sem er úr bókstöfum, tölustöfum og öðrum sérstöfum. Í þessari kennslu lærir þú hvernig á að búa til, vinna og sníða þau til að nota undir mismunandi sviðsmyndum.

Búðu til nýja strengi í Python

Til að búa til nýjan Python-streng þarftu bara að lýsa yfir stafröð sem fylgir einum eða tvöföldum gæsalöppum. Þreföld gæsalappir eru einnig notaðir í margra lína langa strengi.

double_quotes = 'My name is John!' single_quotes = 'My name is John!' multi_line_string = '''1. My name is John!



2. I am a programmer'''

String Indexing

Sérhver stafur í Python-streng hefur heiltöluvísitölu. Verðtryggingin byrjar frá 0 við fyrsta stafinn og hækkar meðfram strengnum. Þú getur notað vísitölu einstakra stafa til að ná þeim staf úr strengnum eins og eftirfarandi dæmi sýnir.

myPet = 'Dog not a cat' myPet[0] # 'D' myPet[5] # 'o' myPet[7] # ' ' myPet[12] # 't' # myPet[15] # IndexError

Reynt er að fá aðgang að persónu handan vísitölu lokapersónunnar leiðir til IndexError .

Þú getur fengið aðgang að staf í streng með neikvæðri vísitölu. Í þessu tilfelli byrjar flokkunin frá -1 við lokastaf strengsins og eykst neikvætt þegar þú ferð afturábak.

myPet = 'Dog not a cat' myPet[-1] # 't' myPet[-6] # ' ' myPet[-8] # 'o' myPet[-13] # 'D'

Strengjasneið

Skerið er aðferðin til að draga undirstreng (hluta strengsins) úr streng. Þessu verkefni er náð með hjálp strengjatengingar.



myPet = 'Dog not a cat' myPet[5:7] # 'ot' myPet[1:12] # 'og not a ca'

Hér eru tvær vísitölur aðgreindar með ristli, fyrsta vísitalan gefur til kynna hvar á að byrja að sneiða og önnur vísitalan gefur til kynna hvar eigi að stoppa. Undirstrengurinn sem myndast inniheldur stafi frá upphafsvísitölunni til stafsins fyrir lokavísitöluna, stafurinn við endavísitöluna er ekki með í undirstrengnum.

Ef þú gefur ekki upphafsvísitölu byrjar sneiðing við fyrsta staf strengsins. Ef þú gefur ekki upp lokavísitöluna endar sneiðingin við lokastafinn á meðan hún er með í undirstrengnum sem myndast.

myPet = 'Dog not a cat' myPet[:7] # 'Dog not' myPet[10:] # 'cat' myPet[:] # 'Dog not a cat'

Þú getur einnig gefið neikvæðar vísitölur sem sneiðarvísitölur.

myPet = 'Dog not a cat' myPet[10:-1] # 'ca'

Lengd strengs

Innbyggða Python aðferðin len() framleiðir lengd strengsins.

myPet = 'Dog not a cat' len(myPet) # 13

Snerast í gegnum streng

Þú getur endurtekið í gegnum hvern staf í streng með því að nota for lykkja.

Dæmi:

name = 'John' for char in name:
print(char) # 'J', 'o', 'h', 'n'

Sameining strengja

Sameining strengja er sameining tveggja eða fleiri strengja til að búa til einn streng. Í Python eru nokkrar aðferðir til að tengja saman strengi.

Einn er að nota + rekstraraðili.

str1 = 'Hello' str2 = 'World' concat_str = str1 + str2 # 'HelloWorld' concat_str = str1 + ' ' + str2 # 'Hello World'

Þú getur notað * rekstraraðili til að hleypa saman strengi við sig hvaða fjölda sem er.

concat_str = str1*3 # 'HelloHelloHello'

Önnur leið til að tengja saman strengi er með join() aðferð.

Innbyggði join() aðferð er notuð til að hleypa saman strengi með sameiginlegum aðskilnaði.

arr = [str1, str2] concat_str = (' ').join(arr) # 'Hello World' concat_str = (',').join(arr) # 'Hello,World'

Í ofangreindum kóða er fyrsti join() aðferð bætir við hvítu bili á milli allra orða í fylkinu.

Annað join() aðferð setur kommu á milli hvers orðs í fylkinu.

Strengur og samsæri

Í Python getum við líka sameinað streng við heiltölu en ekki með + rekstraraðili. Ef við reynum að nota eftirfarandi kóða:

name = 'John' age = 35 print(a + b)

Við myndum fá:

Traceback (most recent call last): File 'concat.py', line 5, in
print(a + b) TypeError: can only concatenate str (not 'int') to str
Athugið:Þú getur ekki sameinað streng og heiltölu með því að nota + rekstraraðili.

Til að koma í veg fyrir þessa villu getum við notað str() aðferð til að umbreyta heiltölunni í streng, til dæmis:

name = 'John ' age = '35' print(a + str(b)) #John 35

Hvernig á að kljúfa streng

Innbyggði split() aðferð er notuð til að skipta einum streng í fylki strengja.

string = 'My name is John' split_arr = string.split(' ') # ['My', 'name', 'is', 'John'] We can also split a string using a separator: string = 'John, Rose, Jack, Mary' split_arr = string.split(', ') # ['John', 'Rose', 'Jack', 'Mary']

Strip - Fjarlægðu hvít rými

strip(), innbyggða strengjaaðferðin er notuð til að fjarlægja hvítu bilin frá upphafi og lok strengs.

string = ' Hello, World ' stripper_str = string.strip() # 'Hello, World'

Eins og þú sérð, strip() fjarlægir ekki hvítu bilin sem eru á milli annarra persóna heldur aðeins í báðum endum.

Það eru tvö afbrigði af strip() aðferð, vinstri rönd og hægri rönd:

  • lstrip()
  • rstrip()

Þessar aðferðir fjarlægja hvít bil á vinstri hlið og hægri hlið strengsins.

Dæmi:

lsplit_str = string.lstrip() # 'Hello, World ' rsplit_str = string.rstrip() # ' Hello, World'

Strip aðferðir eru sérstaklega gagnlegar þegar lesið er inntak notenda, þar sem notendur gætu farið framhjá aukahvítum rýmum.

Sniðið streng

Python’s format() aðferð er notuð til að sníða streng. Krullað axlabönd {} eru notuð inni í strengnum sem þarf að forsníða sem staðsetningaraðila fyrir þann hluta sem þarf að skipta út fyrir rökin sem eru gefin format() aðferð.

Dæmi:

'Hello, {}'.format('John') # 'Hello, John'

Í dæminu hér að ofan {} er skipt út fyrir ‘John’ í sniðnum streng.

Þú getur notað fleiri en eina hrokknaða sviga inni í strengnum til að sníða. Í stað þeirra koma rökin sem færð eru til format() aðferð annaðhvort í tilgreindri röð (ef engar staðsetningarvísitölur eru nefndar innan krullaðra sviga) eða staðsetningarröð.

Dæmi:

'I have a {}, {}, and a {}'.format('dog', 'cat', 'rabbit') # 'I have a dog, cat, and a rabbit' 'I have a {1}, {0}, and a {2}'.format('dog', 'cat', 'rabbit') # 'I have a cat, dog, and a rabbit'

Í stað þess að nota vísitölur geturðu fært format() rök fyrir leitarorðum aðferð svo hægt sé að nota þessi leitarorð innan krullaðra sviga.

Dæmi:

print('{friend} is my friend and {enemy} is my enemy'.format(friend='John', enemy='Jack')) # 'John is my friend and Jack is my enemy'

The format() aðferðin er nokkuð fjölhæf þar sem hægt er að nota hana í mörgum tilfellum.

Hér eru nokkur önnur forrit af format() aðferð:

arr = [3, 5] 'I have {0[0]} dogs and {0[1]} cats'.format(arr) # 'I have 3 dogs and 4 cats' #convert numbers to different bases 'int: {0:d}; hex: {0:x}; oct: {0:o}; bin: {0:b}'.format(42) # 'int: 42; hex: 2a; oct: 52; bin: 101010'

Umbreyta streng í lágstöfum

Notkun Python’s lower() aðferð, getur þú umbreytt streng í lágstöfum.

Dæmi:

string = 'Hello, World!' string.lower() # 'hello, world!'

Umbreyta streng í hástafi

Sömuleiðis með Python’s upper() aðferð, getur þú umbreytt streng í hástafi.

Dæmi:

string = 'Hello, World!' string.upper() # 'HELLO, WORLD!'

Niðurstaða

Ég vona að með hjálp þessarar námskeiðs þekkir þú nú Python strengi og hvernig á að nota ýmsar aðferðir við strengjaaðgerðir.

Tilvísun: Strengjaskjöl Python