当前位置: 首页 > 知识库问答 >
问题:

我试图创建一个函数,该函数输入一个字符串,并返回字符串中处于奇数位置的元音数[duplicate]

鲜于光赫
2023-03-14

我有一个家庭作业来创建这个函数。这是我的密码:

def countVowelsOdd(n):
    length = len(n)
    count = 0
    for i in range(length): 
        if i % 2 != 0:
            if n[i] == "a" or "A" or "e" or "E" or "i" or "I" or "o" or "O" or "u" or "U":
                count = count + 1
    return count

以下是此函数的输出与预期输出:https://i.imgur.com/e524tW6.png

共有2个答案

夹谷奇
2023-03-14

如果您需要解释奇数位置的元音,请执行以下操作:

for i in range(1, length, 2):

检查范围文档,它说您可以传递startStopstep参数。然后范围将从1,3,5,...,到长-1

你也可以这样做

if n[i].lower() in "aeiou":

作为检查字母是否为元音的较短表达式。检查这个问题作为一个例子。

甄云
2023-03-14

事实上,你唯一的问题就是线路

if n[i] == "a" or "A" or "e" or "E" or "i" or "I" or "o" or "O" or "u" or "U":

要么是必须的

if n[i] == "a" or n[i] == "A" or n[i] == "e" or n[i] == "E" or n[i] == "i" or n[i] == "I" or n[i] == "o" or n[i] == "O" or n[i] == "u" or n[i] == "U":

或者你也可以使用

if n[i] in "aAeEiIoOuU":

实际上我更喜欢这个。然而,这条线仍然可以得到改进

if n[i].upper() in "AEIOU":
 类似资料:
  • 本文向大家介绍写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。相关面试题,主要包含被问及写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。时的应答技巧和注意事项,需要的朋友参考一下 【参考答案】 main() { intlen; char *s tr[20]; printf("please input a string:\n"); scanf("%

  • 更新-此问题的上下文为TypeScript 1.4之前的版本。从那个版本开始,我的第一个猜测就得到了语言的支持。请参阅答案的更新。 我可以声明是一个接受字符串并返回字符串的函数: 我可以将声明为字符串数组: 如何将声明为“接受字符串并返回字符串的函数”数组? 我的第一个猜测是: 这似乎是一个语法错误。如果我去掉额外的括号,那么它是一个从字符串到字符串数组的函数。

  • 问题内容: 例如字符串“ abaccddccefe”中的“ ccddcc” 我想到了一个解决方案,但它的运行时间为O(n ^ 2) 算法1: 步骤:这是一种蛮力方法 对于i = 1到i小于array.length的2个for循环, 对于j = i + 1到j小于 array.length的-1 这样,您可以从数组中获取所有可能组合的子字符串 具有回文功能,可检查字符串是否为回文 因此,对于每个子字

  • 本文向大家介绍请编写一个C 函数,该函数将一个字符串逆序。相关面试题,主要包含被问及请编写一个C 函数,该函数将一个字符串逆序。时的应答技巧和注意事项,需要的朋友参考一下 【参考答案】 void AntitoneValue(cha r* father, char* child) { int i ; char source[100]; int j = 0; while(father[j]) //放入

  • 给定一个字符串数组,单词,返回该数组,其中包含所有偶数长度的字符串,并将其替换为空字符串。 如何返回字符串?我需要返回字符串以便为偶数打印空白,但现在我只是返回一个计数。这是我的代码,我认为一切都是正确的,我只是不知道如何返回它?

  • 本文向大家介绍请编写一个C 函数,该函数在一个字符串中找到可能的最长的子字符串,该字符串是由同一字符组成相关面试题,主要包含被问及请编写一个C 函数,该函数在一个字符串中找到可能的最长的子字符串,该字符串是由同一字符组成时的应答技巧和注意事项,需要的朋友参考一下 的。 【参考答案】 int C hildString(char*p) // 自己写 { char q =p; int s tringle