Python'da dizelerle çalışıryorken, bir dizeyi alt dizelere bölmemiz veya bir dize oluşturmak için daha küçük parçaları birleştirmeniz gerekebilir. Python'un split()
ve join()
string yöntemleri, bu görevleri kolayca yapmanıza yardımcı olur.
Bu öğreticide, çok sayıda örnek kodla split()
ve join()
dize yöntemleri hakkında bilgi edineceksiniz .
Python'daki dizeler değişmez olduğundan, orijinal dizeleri değiştirmeden üzerlerinde yöntemleri çağırabilirsiniz.
Python split()
Yöntem Sözdizimi
Bir dizgiyi alt dizgilere bölmeniz gerektiğinde, split()
yöntemi kullanabilirsiniz .
split()
Yöntem, bir ipe davranır ve döner alt dizeleri bir listesini. Sözdizimi:
<string>.split(sep,maxsplit)
Yukarıdaki sözdiziminde:
<string>
geçerli herhangi bir Python dizesi,sep
bölmek istediğiniz ayırıcıdır. Bir dize olarak belirtilmelidir .
<string>
bir virgülün geçtiği yeri bölmek isterseniz, ayarlayabilirsiniz sep = ","
.
sep
Bir olan isteğe bağlı bir değişken. Varsayılan olarak, bu yöntem boşluklardaki dizeleri böler .maxsplit
Bir olan isteğe bağlı bölmek istiyorum kaç kez gösteren argüman<string>
.maxsplit
-1
dizeyi tüm oluşumlarında bölen varsayılan bir değerine sahiptirsep
.
<string>
oluşumuna göre bölmek isterseniz, ayarlayabilirsiniz .maxsplit = 1
Ve ayar maxsplit = 1
size iki parça bırakacaktır - biri <string>
ilk virgülden önceki bölümü ve diğeri <string>
ilk virgülden sonraki bölümü olan .
Bir dizeyi bir kez böldüğünüzde 2 parça alırsınız. Bir dizeyi iki kez böldüğünüzde 3 parça elde edersiniz. Bir dizeyi k
kez böldüğünüzde , k+1
parçalar elde edersiniz .
▶ split()
Yöntemi çalışırken görmek için birkaç örnek alalım .
Python split()
Yöntem Örnekleri
my_string
Aşağıda gösterilenle başlayalım .
my_string = "I code for 2 hours everyday"
Şimdi, argümanlar olmadan split()
on yöntemini çağırın ve .my_string
sep
maxsplit
my_string.split()

Bunu görebilirsiniz my_string
yukarıda gösterildiği gibi, döndürülen tüm whitespaces üzerinde kuruldu mu bölünmüş ve alt dizeleri listesi.
▶ Şimdi aşağıdaki örneği inceleyelim. Burada my_string
virgülle ayrılmış meyve isimleri var.
my_string = "Apples,Oranges,Pears,Bananas,Berries"
Şimdi my_string
virgülle ayıralım – set sep = ","
veya sadece ","
metot çağrısında belirtin .
my_string.split(",")
Beklendiği gibi, split()
yöntem , içindeki her meyvenin my_string
artık bir liste öğesi olduğu bir meyve listesi döndürür .

▶ Şimdi isteğe bağlı maxsplit
argümanı da 2'ye eşitleyerek kullanalım .
my_string.split(",",2)

Döndürülen listeyi ayrıştırmayı deneyelim.
Hatırlatma; my_string
olduğunu "Apples,Oranges,Pears,Bananas,Berries"
ve biz virgül üzerinde dağılma kararı ( ","
).
- İlk virgül after
Apples
'dir ve ilk bölmeden sonra 2 öğeniz olurApples
veOranges,Pears,Bananas,Berries
. - İkinci virgül sonradır
Oranges
. Ve ikinci bölmeden sonra 3 öğeniz olacak,Apples
,Oranges
, vePears,Bananas,Berries
. - Bu noktada,
maxsplit
2'ye ulaştınız ve daha fazla bölme yapılamaz. - Bu nedenle, dizenin ikinci virgülden sonraki kısmı, döndürülen listede tek bir öğe olarak toplanır.
Umarım split()
yöntemin, argümanların sep
ve maxsplit
çalışmanın nasıl olduğunu anlamışsınızdır .
Python join()
Yöntem Sözdizimi
Artık bir dizgiyi alt dizgilere nasıl ayıracağınızı bildiğinize göre join()
, alt dizgilerden bir dizgi oluşturmak için yöntemi nasıl kullanacağınızı öğrenmenin zamanı geldi .
Python join()
yönteminin sözdizimi şöyledir:
<sep>.join(<iterable>)
Buraya,
<iterable>
alt dizeleri içeren herhangi bir Python yinelenebilir, örneğin bir liste veya bir demet ve<sep>
alt dizelere katılmak istediğiniz ayırıcıdır.
join()
yöntem tüm öğeleri ayırıcı olarak <iterable>
kullanarak birleştirir <sep>
.
▶ Ve sıra örneklere geldi.
Python join()
Yöntem Örnekleri
split()
Yöntemle ilgili önceki bölümde my_string
, virgüllerin oluşumları üzerine bir listeye ayırdınız. Listeyi arayalım my_list
.
Şimdi, join()
döndürülen listedeki öğeleri bir araya getirme yöntemini kullanarak bir dize oluşturacaksınız . İçindeki öğelerin my_list
tümü meyvelerin adlarıdır.
my_list = my_string.split(",")
# after my_string is split my_list is:
['Apples', 'Oranges', 'Pears', 'Bananas', 'Berries']