1 / 8
🐍
Python String Advanced
split(), join(), f-stringlar, startswith(), endswith()
Ilg'or String metodlari bilan tanishing
split() metodi
Stringni bo'laklarga ajratish uchun ishlatiladi
string.split(separator, maxsplit)
Asosiy misollar:
matn = "olma,nok,uzum,shaftoli"
mevalar = matn.split(",")
print(mevalar)
# ['olma', 'nok', 'uzum', 'shaftoli']
gap = "Salom dunyo Python"
sozlar = gap.split()
print(sozlar)
# ['Salom', 'dunyo', 'Python']
matn = "a-b-c-d-e"
natija = matn.split("-", 2)
print(natija)
# ['a', 'b', 'c-d-e']
💡 Maslahat: Agar separator ko'rsatilmasa, Python barcha bo'sh joylarni (space, tab, newline) separator sifatida ishlatadi.
join() metodi
List elementlarini bitta stringga birlashtiradi
separator.join(iterable)
Turli xil misollar:
mevalar = ['olma', 'nok', 'uzum']
natija = ", ".join(mevalar)
print(natija)
# "olma, nok, uzum"
sozlar = ['Python', 'juda', 'ajoyib']
print(" ".join(sozlar)) # "Python juda ajoyib"
print("-".join(sozlar)) # "Python-juda-ajoyib"
print("".join(sozlar)) # "Pythonjudaajoyib"
raqamlar = ['1', '2', '3', '4']
print("-".join(raqamlar)) # "1-2-3-4"
🔄 split() va join() birgalikda:
matn = "Python,Java,C++,JavaScript"
tillar = matn.split(",")
yangi_matn = " | ".join(tillar)
print(yangi_matn) # "Python | Java | C++ | JavaScript"
f-stringlar (f-string literals)
Python 3.6+ da eng zamonaviy string formatlash usuli
f"Matn {o'zgaruvchi} davomi"
Asosiy misollar:
ism = "Ali"
yosh = 25
print(f"Mening ismim {ism}, yoshim {yosh}")
# "Mening ismim Ali, yoshim 25"
a, b = 10, 5
print(f"{a} + {b} = {a + b}")
# "10 + 5 = 15"
ism = "python"
print(f"Katta harflar: {ism.upper()}")
# "Katta harflar: PYTHON"
Formatlar bilan:
narx = 1234.567
print(f"Narx: {narx:.2f} so'm")
# "Narx: 1234.57 so'm"
foiz = 0.85
print(f"Natija: {foiz:.1%}")
# "Natija: 85.0%"
startswith() metodi
String ma'lum belgilar bilan boshlanadimi tekshiradi
string.startswith(prefix, start, end)
Turli xil misollar:
matn = "Python dasturlash tili"
print(matn.startswith("Python")) # True
print(matn.startswith("Java")) # False
print(matn.startswith(("Python", "Java", "C++"))) # True
print(matn.startswith("dastur", 7)) # True
🔍 Amaliy misol - URL tekshirish:
def url_tekshir(url):
if url.startswith(("http://", "https://")):
return "To'g'ri URL"
return "Noto'g'ri URL"
print(url_tekshir("https://python.org")) # To'g'ri URL
endswith() metodi
String ma'lum belgilar bilan tugaydimi tekshiradi
string.endswith(suffix, start, end)
Turli xil misollar:
fayl = "document.pdf"
print(fayl.endswith(".pdf")) # True
print(fayl.endswith(".txt")) # False
print(fayl.endswith((".pdf", ".doc", ".txt"))) # True
matn = "Python dasturlash"
print(matn.endswith("dastur", 0, 13)) # True
📁 Amaliy misol - Fayl filtrlash:
fayllar = ["doc.pdf", "music.mp3", "photo.jpg", "code.py"]
rasm_fayllar = [f for f in fayllar if f.endswith((".jpg", ".png"))]
print(rasm_fayllar) # ['photo.jpg']
Amaliy misollar
Barcha metodlarni birgalikda ishlatish
1. CSV ma'lumotlarni qayta ishlash:
csv_matn = "Ali,25,Toshkent\nVali,30,Samarqand\nGuli,22,Buxoro"
qatorlar = csv_matn.split('\n')
for qator in qatorlar:
ism, yosh, shahar = qator.split(',')
print(f"Ismi: {ism}, Yoshi: {yosh}, Shahri: {shahar}")
2. Email validatsiya:
def email_tekshir(email):
if email.endswith((
"@gmail.com",
"@mail.ru",
"@yandex.com")):
return f"{email} - to'g'ri email"
return f"{email} - noto'g'ri email"
print(email_tekshir(
"[email protected]"))
3. Fayl nomi generatori:
def fayl_nomi_yarat(nom, kengaytma):
if not nom.endswith(f".{kengaytma}"):
return f"{nom}.{kengaytma}"
return nom
print(fayl_nomi_yarat("document", "pdf")) # document.pdf
Xulosa
📊 Asosiy metodlar:
- split() - stringni bo'laklarga ajratish
- join() - listni stringga birlashtirish
- f-stringlar - zamonaviy formatlash
- startswith() - boshlanish tekshirish
- endswith() - tugash tekshirish
💡 Muhim xususiyatlar:
- Barcha metodlar yangi string qaytaradi
- Asl string o'zgarmas qoladi
- Tuple bilan bir nechta variant tekshirish mumkin
- f-stringlar eng tez va oson usul
🚀 Keyingi qadamlar:
- Bu metodlarni turli loyihalarda qo'llang
- Regex bilan birgalikda ishlatishni o'rganing
- Performance optimizatsiyasi ustida ishlang
- Real loyihalarda amaliy misollar yarating
🎉 Rahmat! Savollar bormi?