Metoda de găsire a șirurilor
Există două opțiuni pentru găsirea unui sub șir într-un șir în Python, find()
și rfind()
.
Fiecare va returna poziția la care se găsește șirul. Diferența dintre cele două este că find()
returnează poziția cea mai joasă și rfind()
returnează cea mai înaltă poziție.
Pot fi furnizate argumente opționale de început și de sfârșit pentru a limita căutarea subșirului la porțiuni din șir.
Exemplu:
>>> string = "Don't you call me a mindless philosopher, you overweight glob of grease!"
>>> string.find('you')
6
>>> string.rfind('you')
42
Dacă sub șirul nu este găsit, se returnează -1.
>>> string = "Don't you call me a mindless philosopher, you overweight glob of grease!"
>>> string.find('you', 43) # find 'you' in string anywhere from position 43 to the end of the string
-1
Mai multe informatii:
Metode de șir documentație.
Metoda String Join
str.join(iterable)
metoda este utilizată pentru a uni toate elementele dintr-un iterable
cu un șir specificat str
. Dacă iterabilul conține valori non-șir, generează o excepție TypeError.
iterable
: Toate iterabilele de șir. Ar putea fi o listă de șiruri, tupluri de șiruri sau chiar un șir simplu.
Exemple
Alăturați-vă unui ist de șiruri cu ":"
print ":".join(["Routech", "is", "fun"])
Ieșire
Routech:is:fun
Alăturați-vă unui tuplu de corzi cu " and "
print " and ".join(["A", "B", "C"])
Ieșire
A and B and C
Introduceți un " "
după fiecare caracter dintr-un șir
print " ".join("Routech")
Ieșire:
f r e e C o d e C a m p
Alăturarea cu șir gol.
list1 = ['p','r','o','g','r','a','m']
print("".join(list1))
Ieșire:
program
Alăturarea cu seturi.
test = {'2', '1', '3'}
s=", "
print(s.join(test))
Ieșire:
2, 3, 1
Mai multe informatii:
Documentație Python pe String Join
Metoda înlocuirii șirului
str.replace(old, new, max)
metoda este utilizată pentru a înlocui șirul de caractere old
cu șirul new
pentru un total de max
ori. Această metodă returnează o nouă copie a șirului cu înlocuirea. Șirul original str
este neschimbat.
Exemple
- Înlocuiți toate aparițiile de
"is"
cu"WAS"
string = "This is nice. This is good."
newString = string.replace("is","WAS")
print(newString)
Ieșire
ThWAS WAS nice. ThWAS WAS good.
- Înlocuiți primele 2 apariții ale
"is"
cu"WAS"
string = "This is nice. This is good."
newString = string.replace("is","WAS", 2)
print(newString)
Ieșire
ThWAS WAS nice. This is good.
Mai multe informatii:
Citiți mai multe despre înlocuirea șirurilor în Documente Python
Metoda String Strip
Există trei opțiuni pentru a elimina caracterele dintr-un șir în Python, lstrip()
, rstrip()
și strip()
.
Fiecare va returna o copie a șirului cu caractere eliminate, de la început, sfârșit sau ambele la început și sfârșit. Dacă nu sunt date argumente, valoarea implicită este de a elimina caracterele spațiului alb.
Exemplu:
>>> string = ' Hello, World! '
>>> strip_beginning = string.lstrip()
>>> strip_beginning
'Hello, World! '
>>> strip_end = string.rstrip()
>>> strip_end
' Hello, World!'
>>> strip_both = string.strip()
>>> strip_both
'Hello, World!'
Un argument opțional poate fi furnizat ca un șir care conține toate caracterele pe care doriți să le eliminați.
>>> url="www.example.com/"
>>> url.strip('w./')
'example.com'
Cu toate acestea, observați că numai primul .
s-a dezbrăcat de coardă. Acest lucru se datorează faptului că strip
funcția elimină numai caracterele argumentului care se află în stânga sau în dreapta. Din moment ce w vine înainte de primul .
se dezbracă împreună, în timp ce „com” este prezent la capătul drept înainte de .
după dezbrăcare /
.
Metoda Split String
split()
funcția este frecvent utilizată pentru divizarea șirurilor în Python.
split()
metodă
Șablon: string.split(separator, maxsplit)
separator
: Șirul delimitator. Împărțiți șirul pe baza acestui caracter. De exemplu. ar putea fi ” “, “:”, “;” etc.
maxsplit
: De câte ori se împarte șirul în funcție de separator
. Dacă nu este specificat sau -1, șirul este împărțit pe baza tuturor aparițiilor separator
Această metodă returnează o listă de șiruri de caractere delimitate de separator
Exemple
Divizați șirul pe spațiu: ””
string = "Routech is fun."
print(string.split(" "))
Ieșire:
['Routech', 'is', 'fun.']
Divizați șirul pe virgulă: ”,”
string = "Routech,is fun, and informative"
print(string.split(","))
Ieșire:
['Routech', 'is fun', ' and informative']
Nu separator
specificat
string = "Routech is fun and informative"
print(string.split())
Ieșire:
['Routech', 'is', 'fun', 'and', 'informative']
Notă: dacă nu separator
este specificat, apoi șirul este dezbrăcat toate spatiu alb
string = "Routech is fun and informative"
print(string.split())
Ieșire:
['Routech', 'is', 'fun', 'and', 'informative']
Divizați șirul folosind maxsplit
. Aici împărțim șirul pe ”” de două ori:
string = "Routech is fun and informative"
print(string.split(" ", 2))
Ieșire:
['Routech', 'is', 'fun and informative']
Mai multe informatii
Verificați Documente Python despre divizarea șirurilor