当前位置: 华文世界 > 科技

Python第105题:重复较短的字符串【PythonTip题库300题】

2024-02-10科技

1、编程试题:

编写一个程序,重复长度较小的字符串,直到长度等于较长字符串的长度。假设两个输入字符串的长度不相等。

定义函数repeat_till_equal_length()的函数,有两个参数string1和string2。

在函数内,重复较短的字符串,直到它等于较长的字符串的长度。

示例输入

python

pythontip

示例输出

pythonpyt

解释:

较长字符串pythontip的长度为9,较短字符串的长度为6。短字符串重复,直到其长度等于9。

2、代码实现:

可编辑代码如下:

#!/usr/bin/python3.9# -*- coding: utf-8 -*-## Copyright (C) 2024 , Inc. All Rights Reserved## @Time : 2024/2/10 9:22# @Author : fangel# @FileName : 105.重复较短的字符串.py# @Software : PyCharmdef repeat_till_equal_length(string1, string2): #步骤1:先确定最长的字符串和最短的字符串 if len(string1) < len(string2): shortStr = string1 longStr = string2 else: shortStr = string2 longStr = string1 #步骤2:确定两者之间的差值 lenDiff = len(longStr) - len(shortStr) #步骤3:确定两者之间的差值和最短字符串的关系,一个是倍数关系,一个是模关系 i = int(lenDiff / len(shortStr)) j = lenDiff % len(shortStr) #步骤4:重复长度较小的字符串,直到长度等于较长字符串的长度 strNew = shortStr + shortStr * i + shortStr[0:j] return strNew# 输入两个字符串string1 = input()string2 = input()# 调用函数print(repeat_till_equal_length(string1, string2))

3、代码分析:

本例首先要确定最长和最短的字符串,可以通过长度来判断,然后计算差值,再确定两者之间的差值和最短字符串的关系,一个是倍数关系,一个是模关系最后重复 长度较小的字符串即可。

4、运行结果:

输入:

school

scholar

输出:

schools