Bir stringi kaydır
Bir string verildiğinde, onu belirtilen sayıda pozisyon shift kadar kaydırarak, bileşen karakterlerin bir dizisini üreten bir jeneratör oluşturacaksın. Örneğin, 'sushi' stringi 2 pozisyon sağa kaydırdığımızda (shift = 2) 'h', 'i', 's', 'u', 's' dizisini üretir. 2 pozisyon sola kaydırdığımızda (shift = -2), ortaya çıkan dizi 's', 'h', 'i', 's', 'u' olur.
İpucu: geçerli indeksler arasında döngü yapmak için % operatörünü kullan. Bunu pozitif ya da negatif bir sayıya uygulamak negatif olmayan bir kalan verir; bu, indeksi kaydırırken işine yarar.
Örneğin, 6 karakter içeren string = 'python' değişkenini ele alalım:
2 % 6 = 2(dolayısıyla,string[2 % 6]tolur)0 % 6 = 0(dolayısıyla,string[0 % 6]polur)-2 % 6 = 4(dolayısıyla,string[-2 % 6]oolur)
Bu egzersiz, kursun bir parçasıdır
Python ile Kodlama Mülakatı Soruları Pratiği
Egzersiz talimatları
- Verilen
len_stringdeğişkenini kullanarak bir stringin indeksleri üzerinde dön. - Kaydırma yaptığımızda indekse karşılık gelecek karakteri bul.
'DataCamp'stringini 3 pozisyon sağa kaydıran (yani"ampDataC") bir jeneratör oluştur.- Jeneratörü kullanarak yeni bir string oluştur ve yazdır.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
def shift_string(string, shift):
len_string = len(string)
# Loop over the indices of a string
for idx in ____:
# Find which character will correspond to the index.
____ ____[____]
# Create a generator
gen = ____
# Create a new string using the generator and print it out
string_shifted = ''.____
print(string_shifted)