def alternative_string_arrange(first_str: str, second_str: str) -> str:
"""
返回两个字符串的交替排列。
:param first_str: 第一个字符串
:param second_str: 第二个字符串
:return: 交替排列后的字符串
>>> alternative_string_arrange("ABCD", "XY")
'AXBYCD'
>>> alternative_string_arrange("XY", "ABCD")
'XAYBCD'
>>> alternative_string_arrange("AB", "XYZ")
'AXBYZ'
>>> alternative_string_arrange("ABC", "")
'ABC'
"""
# 获取两个字符串的长度
first_str_length: int = len(first_str)
second_str_length: int = len(second_str)
# 计算两个字符串长度的绝对值
abs_length: int = (
first_str_length if first_str_length > second_str_length else second_str_length
)
# 初始化一个空列表,用于存储交替排列的字符
output_list: list = []
# 遍历字符串长度的绝对值次
for char_count in range(abs_length):
# 如果当前计数小于第一个字符串的长度,将第一个字符串的字符添加到列表中
if char_count < first_str_length:
output_list.append(first_str[char_count])
# 如果当前计数小于第二个字符串的长度,将第二个字符串的字符添加到列表中
if char_count < second_str_length:
output_list.append(second_str[char_count])
# 将列表中的字符连接成字符串并返回
return "".join(output_list)
if __name__ == "__main__":
# 调用函数并打印结果
print(alternative_string_arrange("AB", "XYZ"), end=" "