Çizgiler. Genel Bakış

Bir dize - yerleştirilen karakterlerin bir listesidir (veya dizisidir). belirli bir tamam. Tüm karakter dizisi tek bir nesne olarak ele alınır.

Karakter, klavyede tek bir tuş vuruşuyla (harf, sayı, ters eğik çizgi veya başka bir karakter) yazabileceğiniz herhangi bir şeydir.

Dizelerde boşluk olabilir: "Merhaba dünya!".

Boş bir dize, 0 karakter içeren bir dizedir.

Python, tırnak işaretleri (" ") veya kesme işaretleri (' ') içine alınmış her şeyi dize olarak kabul eder.

Python'da bir dize str türündedir.
 
Hatırlamanız gerekiyor!
Python'daki dizeler sabittir!


Giriş ifadesini kullanarak bir dizgeye yeni bir değer yazabilirsiniz.
s = girdi()

Ayrıca değişkene   gibi basitçe bir dize değeri atayabilirsiniz.
s = 'Python'
ya da öylesine
s = "Piton"

len() yerleşik işlevini kullanarak bir dizenin uzunluğunu belirleyebilirsiniz.
n = uzunluk(lar)


Dize karşılaştırması

Dizeler tıpkı sayılar gibi birbirleriyle karşılaştırılabilir. Çizgilerden hangisinin büyük hangisinin küçük olduğunu belirleyebilirsiniz.

Dizeleri karşılaştırırken, karakter kodları karşılaştırılır. Yüzlerce olmasa da düzinelerce karakter kodlaması vardır. Bu kavramı anlamanın en kolay yolu, en basitlerinden biri olan ASCII'yi anlamaktır (burayı okuyun).  

Modern kodlamalarda hem Rusça hem de İngilizce harflerin alfabetik sırayla düzenlendiğini, sayıların da küçükten büyüğe gittiğini anlamak gerekir. 
Örneğin, ASCII kod tablosunda İngilizce 'A' - 65, 'a' harfleri - 97, basamak '0' kodu 48'dir. Rus harfleri ASCII kod tablosunun genişletilmiş kısmında bulunur (128'den 255'e kadar olan sayılar). Büyük harfler küçük harflerden önce gelir (yani daha küçük bir kodu vardır).

Kullanılan kodlama tablolarının çoğunda kalıplar aynıdır, küçük harfler büyük harflerden sonra, sayılar harflerden önce ve Rusça harfler İngilizceden sonra gelir.
 
Python, karakterleri veya dizeleri karşılaştırırken, karakterleri ilgili sıra değerlerine dönüştürür ve ardından soldan sağa karşılaştırır. 

Örneğin: "lokomotif"  < "vapur", çünkü kelimeler beşinci harfte ve "in" de farklıdır < "x".

Bir satırı parçalara ayırma

Bir dize girerken, onu herhangi bir ayırıcıyla hemen parçalara ayırabilirsiniz.
Bunu daha önce aynı satıra birden çok sayısal değişken girdiğimizde yapmıştık. Bir dizeyi parçalara ayırmak için split() yöntemini kullandık. Varsayılan olarak, dizeleri boşlukla alt dizelere ayırır.
Bu yöntemi kullanarak, dizeyi örneğin boşluklara göre parçalara bölebilirsiniz. Ve dizinin her bir parçasını ayrı bir değişkene yazın.
 
Örnek
s1, s2 = input().split()

Örnekte, boşlukla ayrılmış iki kelime girerken, ilk kelime s1 değişkeninde, ikincisi - s2 değişkeninde saklanır.

Dizelerin toplanması ve çarpılması

Dizeler eklenebilir, bunun için "+" işareti kullanılır. Bu işleme dize birleştirme veya birleştirme denir. 
 
Örnek 
s = "Merhaba"
s1 = "dünya"
print(s + s1)
Ekranda "Merhaba dünya" (tırnak işaretleri olmadan).

Python, bir diziyi bir sayıyla çarpma işlemini uygular: çoklu toplamanın yerine geçer.
 
Örnek 
sicim
s = "dünya "+"dünya "+"dünya "+"dünya "
  ile değiştirilebilir
s = "dünya " *4

Satır dizinlerine gönderme

Bir dizedeki her karakterin bir numarası vardır (dizin olarak adlandırılır) ve birçok dilde numaralandırma her zaman sıfırdan başlar.
Python'da negatif dizinler belirleyebilirsiniz. Bu, satırın sonundan itibaren sayıldığı anlamına gelir.
 
Örnek 

Dizenin uzunluğunu negatif dizine eklerseniz, bir "normal" elde edersiniz. karakter konumu.
 
Hatırlamanız gerekiyor!
Python'da bir dizgedeki tek bir karakteri değiştiremezsiniz, çünkü dizelerin kendisi değişmezdir. 

Dize S H e l l o
Dizin S[0] S[1] S[2] S[3] S[4]
Dizin S[-5] S[-4] S[-3] S[-2] S[-1]

Tüm karakterleri yineleyin

Bir karaktere dizin tarafından erişilebildiğinden, olası dizin değerlerini alacak olan tüm karakterleri yinelemek için bir değişken döngüsü kullanabilirsiniz. Örneğin, s dizisinin tüm karakter kodlarını görüntüleyen bir program şöyle görünür:
aralıktaki i için(len(ler)):
    print(s[i], sıra(s[i]))
Program için açıklamalar:
1) len(s) işlevi bir dizgenin uzunluğunu bulur. İlk karakterin indeksi 0 ve son karakterin indeksi len(s)-1'dir. i döngü değişkeni, 0 ile len(s)-1 arasındaki değerleri sırayla alacaktır.
2) Her satırda önce sembolün kendisi, ardından ord() yerleşik işlevi tarafından döndürülen kodu görüntülenir.

Aynı numaralandırma daha kısa yazılabilir:
s'de c için:
    yazdır(c, sıra(c))
Bu parçada, döngü başlığı tüm s karakterlerini sırayla c değişkenine yerleştirerek döngü halinde geçirir.

Daha önce de belirtildiği gibi, dizelerle çalışırken Python'un özelliği, dizelerin değişmez nesneler olmasıdır. Başka bir deyişle, bir dizgenin karakterlerini tek tek değiştiremeyiz.

Örneğin, aşağıdaki ifade çalışmaz
s[5]='a'
Ancak gerekli değişikliklerle karakterlerden yeni bir satır oluşturabilirsiniz.
 
Görev
Giriş dizesindeki tüm 'a' karakterlerini değiştirin. 'b'. 
s = girdi()
sNew = ""
s'de c için:
    c == 'a' ise: c = 'b'
    sYeni += c
print(sYeni)

Bu programda, döngü s dizisinin tüm karakterlerinden geçer. Döngü gövdesinde, с değişkeninin değerini kontrol ederiz: sembol 'a' sembolü ile eşleşirse, onu değiştiririz 'b< /code>' ile ekleyin ve ekleme operatörünü kullanarak yeni sNew satırının sonuna ekleyin.
Bu seçenek oldukça yavaştır.

Gelecekte, yerleşik dize işleme işlevlerine bir göz atacağız ve bunu nasıl daha hızlı yapacağımızı öğreneceğiz.