在此代码中如何使用for循环和while循环

时间:2018-12-16 17:54:40

标签: for-loop while-loop

我正在通过树屋学习python,它非常绿色,所以请带一点盐。我使用while循环进行了这项工作,但是认为它作为for循环更有意义,因为它循环的次数由单词的长度设置。目的是使任何单词的前半部分小写,后半部分大写。我确定这是超级基础,但是我花了很多时间试图做到这一点,但是由于列表和字符串问题,我无法解决主要问题...任何想法都将不胜感激! 谢谢! Brian(请参阅以下代码)

def sillycase(word1):
    half = int(len(word1)/2)
    word1 = list(word1)
    counter = 0
    while True:
      if counter < half:
        word1[counter] = word1[counter].lower()
      elif counter >= len(word1):
        break
      else:
        word1[counter] = word1[counter].upper()
      counter += 1

    word1 = "".join(word1[:])

    print(word1)
    return word1

1 个答案:

答案 0 :(得分:0)

对于这种情况,您实际上可以简单地在不使用任何循环的情况下进行操作,方法是将输入字符串的前半部分切成小写,然后将另一半转换成大写:

def sillycase(word1):
    half_len=int(len(word1)/2)
    temp1=word1.lower()[:half_len]
    temp2=word1[half_len::].upper()
    final_string= temp1+temp2
    return final_string