Problem

8 /13


Tüm karakterler arasında dolaş

Theory Click to read/hide

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.
 

Problem

Bir dizideki tüm noktaları sıfırlarla ve tüm büyük İngilizce harfleri "X" ile değiştiren bir program yazın. birimler. 
 
Örnekler

# Girdi Çıktı
1 ..X..XX 0010011