ef loopy_madness(string1: str, string2: str) -> str: """ Given two strings and , return a new string that contains letters from these two strings "interwoven" together, starting with the first character of . If the two strings are not of equal length, then start looping "backwards-and-forwards" in the shorter string until you come to the end of the longer string. "interwoven" (or "interweaving") means constructing a new string by taking the first letter from the first string, adding the first letter of the second string, adding the second letter of the first string, adding the second letter of the second string, and so on. "backwards-and-forwards" is a custom looping term. First the loop starts at position 1 (index 0) and goes until position n (i.e., the end). Once the loop reaches position n, it goes backwards, starting at position n - 1 and goes to position 1 (index 0). This repeats until the two strings are interwoven. For example, the backwards-and-forwards operations of "abc" would be "abcbabcba..." Examples: If you are given "abc" and "123", then the output string is "a1b2c3". This is after taking "a" from the first string, adding "1" from the second string, adding "b" from the first string, and so on. Things get more interesting when you are given two strings that differ in length. For example, if you are given "abcde" and "12", then the output would be "a1b2c1d2e1". Notice how the shorter string loops around when it runs out of characters, and continues looping until the longer string is exhausted. Another example of the "backwards-and-forwards" implementation given two strings of differing length: "abcdfe" and "123", then the output would be "a1b2c3d2f1e2". Note that the first string could be shorter too, for example, given "ab" and "123", the output would be "a1b2
def loopy_madness(string1: str, string2: str) -> str:
"""
Given two strings <string1> and <string2>, return a new string that
contains letters from these two strings "interwoven" together, starting with
the first character of <string1>. If the two strings are not of equal
length, then start looping "backwards-and-forwards" in the shorter string
until you come to the end of the longer string.
"interwoven" (or "interweaving") means constructing a new string by taking
the first letter from the first string, adding the first letter of the
second string, adding the second letter of the first string,
adding the second letter of the second string, and so on.
"backwards-and-forwards" is a custom looping term. First the loop starts
at position 1 (index 0) and goes until position n (i.e., the end). Once the
loop reaches position n, it goes backwards, starting at position n - 1 and
goes to position 1 (index 0). This repeats until the two strings are
interwoven. For example, the backwards-and-forwards operations of "abc"
would be "abcbabcba..."
Examples:
If you are given "abc" and "123", then the output string is "a1b2c3".
This is after taking "a" from the first string, adding "1" from the
second string, adding "b" from the first string, and so on.
Things get more interesting when you are given two strings that differ
in length. For example, if you are given "abcde" and "12", then the
output would be "a1b2c1d2e1". Notice how the shorter string loops
around when it runs out of characters, and continues looping until the
longer string is exhausted.
Another example of the "backwards-and-forwards" implementation given
two strings of differing length: "abcdfe" and "123", then the output
would be "a1b2c3d2f1e2".
Note that the first string could be shorter too, for example, given
"ab" and "123", the output would be "a1b2a3".
"""
use while loop and do it on python and don't use import, dictionaries or try-except method
Step by step
Solved in 2 steps with 3 images