koddla

Yazılımcıları bilgi ile güçlendirir.

Python’da bir dizeden boşlukları nasıl kırparız?

Python’da bir dizeden baştaki ve sondaki boşlukları nasıl kaldırırız?

Örneğin aşağıdaki dönüşümü yapmak istiyoruz:

" Hello " --> "Hello"
" Hello"  --> "Hello"
"Hello "  --> "Hello"
"Bob has a cat" --> "Bob has a cat"

Peki sadece bir boşluk mu kırpacağız yoksa ardışık tüm boşluklar mı kırpmak istiyoruz? İkincisi ise, dizelere ait bir .strip()  metodu bulunuyor:

>>> ' Hello '.strip()
'Hello'
>>> ' Hello'.strip()
'Hello'
>>> 'Bob has a cat'.strip()
'Bob has a cat'
>>> '   Hello   '.strip()  # Tüm boşluklar

Ancak yalnızca bir boşluğu kırpmak istiyorsak bunu şu şekilde yapabiliriz:

def strip_one_space(s):
    if s.endswith(" "): s = s[:-1]
    if s.startswith(" "): s = s[1:]
    return s

>>> strip_one_space("   Hello ")
'  Hello'

Ayrıca, ;str.strip() diğer boşluk karakterlerini de (örneğin sekmeler ve yeni satırlar) kaldırır. Yalnızca boşlukları kaldırmak için, kaldırılacak karakteri bağımsız değişken olarak belirtmelisiniz:

>>> "  Hello\n".strip(" ")
'Hello\n'

Yukarıda da belirtildiği gibi .strip() baştaki ve sondaki tüm boşluk karakterlerini kaldırır: \n\r\t\f

Ancak daha fazla esneklik istiyorsanız aşağıdakileri de kullanabilirsiniz:

  • Yalnızca baştaki boşluk karakterlerini kaldırmak için : my_string.lstrip()
  • Yalnızca sondaki boşluk karakterlerini kaldırmak için : my_string.rstrip()
  • Belirli boşluk karakterlerini kaldırmak için: my_string.strip('\n'), my_string.lstrip('\n\r'), my_string.rstrip('\n\t') vb.

Daha fazla ayrıntı bilgi için Python belgelere bakabilirsiniz.

Bir yanıt yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Back to top