एक स्ट्रिंग को शिफ्ट करें
आप एक जनरेटर बनाएँगे जो किसी स्ट्रिंग को लेकर उसके कैरेक्टर्स का ऐसा अनुक्रम पैदा करे जिसमें हर कैरेक्टर को दिए गए shift पोज़िशनों से शिफ्ट किया गया हो. उदाहरण के लिए, स्ट्रिंग 'sushi' को अगर हम दाईं ओर 2 पोज़िशन शिफ्ट करें (shift = 2), तो क्रम होगा 'h', 'i', 's', 'u', 's'. अगर हम बाईं ओर 2 पोज़िशन शिफ्ट करें (shift = -2), तो परिणामस्वरूप क्रम 's', 'h', 'i', 's', 'u' होगा.
टिप: वैध इंडेसेज़ के बीच चक्र बनाने के लिए % ऑपरेटर का उपयोग करें. इसे किसी धनात्मक या ऋणात्मक संख्या पर लगाने से गैर-ऋणात्मक remainder मिलता है, जो इंडेक्स शिफ्ट करते समय सहायक होता है.
उदाहरण के लिए, यह वैरिएबल लें string = 'python', जिसमें 6 कैरेक्टर्स हैं:
2 % 6 = 2(अतः,string[2 % 6]tहै)0 % 6 = 0(अतः,string[0 % 6]pहै)-2 % 6 = 4(अतः,string[-2 % 6]oहै)
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में कोडिंग इंटरव्यू प्रश्नों का अभ्यास
अभ्यास निर्देश
- दी गई
len_stringवैरिएबल का उपयोग करके किसी स्ट्रिंग के इंडेसेज़ पर लूप चलाइए. - शिफ्ट करने पर दिए गए इंडेक्स के लिए कौन-सा कैरेक्टर आएगा, यह निकालिए.
- एक जनरेटर बनाइए जो स्ट्रिंग
'DataCamp'को दाईं ओर 3 पोज़िशन शिफ्ट करे (अर्थात्"ampDataC"). - जनरेटर से एक नई स्ट्रिंग बनाइए और उसे प्रिंट कीजिए.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
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)