Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么此代码不向后打印字符_Python - Fatal编程技术网

Python 为什么此代码不向后打印字符

Python 为什么此代码不向后打印字符,python,Python,您忘记在函数结束时返回p: def anti_vowel(text): p='' for c in text: if c=='a' or c=='A': break elif c=='e' or c=='E': break elif c=='i' or c=='I': break elif c=='o' or c=='O':

您忘记在函数结束时返回
p

def anti_vowel(text):
    p=''
    for c in text:
        if c=='a' or c=='A':
            break
        elif c=='e' or c=='E':
            break
        elif c=='i' or c=='I':
            break
        elif c=='o' or c=='O':
            break

        elif c=='u' or c=='U':
            break
        else:
            p=p+c



print(anti_vowel('Hello you'))
如果没有最后一行,您将只打印
None
,这是没有显式
return
语句的函数的默认返回值

当然,您的函数只会打印第一个辅音,因为只要找到任何元音,
break
就会结束循环。它永远不会倒转字符串。对于示例输入,函数返回
'H'
,因为输入中的下一个字母是元音,而
break
则结束循环

您可以轻松地重新编写函数以使用
str.lower()
和包含测试:

def anti_vowel(text):
    p=''
    for c in text:
        if c=='a' or c=='A':
            break
        elif c=='e' or c=='E':
            break
        elif c=='i' or c=='I':
            break
        elif c=='o' or c=='O':
            break
        elif c=='u' or c=='U':
            break
        else:
            p=p+c
    return p
同样,返回第一个辅音(
'H'
用于示例输入)

如果要反转字母并排除元音,请不要使用
break
并反转放置其余字母的位置。您可以使用
continue
替代,或者更简单地说,只需反转
if
测试,并且只处理不是元音的字符:

def anti_vowel(text):
    p = ''
    for c in text:
        if c.lower() in 'aeiou':
            break
        p += c
    return p
现在,辅音置于任何前面的辅音之前,与文本相反:

def anti_vowel(text):
    p = ''
    for c in text:
        if c.lower() not in 'aeiou':
            p = c + p
    return p
您忘记在函数结束时返回
p

def anti_vowel(text):
    p=''
    for c in text:
        if c=='a' or c=='A':
            break
        elif c=='e' or c=='E':
            break
        elif c=='i' or c=='I':
            break
        elif c=='o' or c=='O':
            break

        elif c=='u' or c=='U':
            break
        else:
            p=p+c



print(anti_vowel('Hello you'))
如果没有最后一行,您将只打印
None
,这是没有显式
return
语句的函数的默认返回值

当然,您的函数只会打印第一个辅音,因为只要找到任何元音,
break
就会结束循环。它永远不会倒转字符串。对于示例输入,函数返回
'H'
,因为输入中的下一个字母是元音,而
break
则结束循环

您可以轻松地重新编写函数以使用
str.lower()
和包含测试:

def anti_vowel(text):
    p=''
    for c in text:
        if c=='a' or c=='A':
            break
        elif c=='e' or c=='E':
            break
        elif c=='i' or c=='I':
            break
        elif c=='o' or c=='O':
            break
        elif c=='u' or c=='U':
            break
        else:
            p=p+c
    return p
同样,返回第一个辅音(
'H'
用于示例输入)

如果要反转字母并排除元音,请不要使用
break
并反转放置其余字母的位置。您可以使用
continue
替代,或者更简单地说,只需反转
if
测试,并且只处理不是元音的字符:

def anti_vowel(text):
    p = ''
    for c in text:
        if c.lower() in 'aeiou':
            break
        p += c
    return p
现在,辅音置于任何前面的辅音之前,与文本相反:

def anti_vowel(text):
    p = ''
    for c in text:
        if c.lower() not in 'aeiou':
            p = c + p
    return p
您忘记在函数结束时返回
p

def anti_vowel(text):
    p=''
    for c in text:
        if c=='a' or c=='A':
            break
        elif c=='e' or c=='E':
            break
        elif c=='i' or c=='I':
            break
        elif c=='o' or c=='O':
            break

        elif c=='u' or c=='U':
            break
        else:
            p=p+c



print(anti_vowel('Hello you'))
如果没有最后一行,您将只打印
None
,这是没有显式
return
语句的函数的默认返回值

当然,您的函数只会打印第一个辅音,因为只要找到任何元音,
break
就会结束循环。它永远不会倒转字符串。对于示例输入,函数返回
'H'
,因为输入中的下一个字母是元音,而
break
则结束循环

您可以轻松地重新编写函数以使用
str.lower()
和包含测试:

def anti_vowel(text):
    p=''
    for c in text:
        if c=='a' or c=='A':
            break
        elif c=='e' or c=='E':
            break
        elif c=='i' or c=='I':
            break
        elif c=='o' or c=='O':
            break
        elif c=='u' or c=='U':
            break
        else:
            p=p+c
    return p
同样,返回第一个辅音(
'H'
用于示例输入)

如果要反转字母并排除元音,请不要使用
break
并反转放置其余字母的位置。您可以使用
continue
替代,或者更简单地说,只需反转
if
测试,并且只处理不是元音的字符:

def anti_vowel(text):
    p = ''
    for c in text:
        if c.lower() in 'aeiou':
            break
        p += c
    return p
现在,辅音置于任何前面的辅音之前,与文本相反:

def anti_vowel(text):
    p = ''
    for c in text:
        if c.lower() not in 'aeiou':
            p = c + p
    return p
您忘记在函数结束时返回
p

def anti_vowel(text):
    p=''
    for c in text:
        if c=='a' or c=='A':
            break
        elif c=='e' or c=='E':
            break
        elif c=='i' or c=='I':
            break
        elif c=='o' or c=='O':
            break

        elif c=='u' or c=='U':
            break
        else:
            p=p+c



print(anti_vowel('Hello you'))
如果没有最后一行,您将只打印
None
,这是没有显式
return
语句的函数的默认返回值

当然,您的函数只会打印第一个辅音,因为只要找到任何元音,
break
就会结束循环。它永远不会倒转字符串。对于示例输入,函数返回
'H'
,因为输入中的下一个字母是元音,而
break
则结束循环

您可以轻松地重新编写函数以使用
str.lower()
和包含测试:

def anti_vowel(text):
    p=''
    for c in text:
        if c=='a' or c=='A':
            break
        elif c=='e' or c=='E':
            break
        elif c=='i' or c=='I':
            break
        elif c=='o' or c=='O':
            break
        elif c=='u' or c=='U':
            break
        else:
            p=p+c
    return p
同样,返回第一个辅音(
'H'
用于示例输入)

如果要反转字母并排除元音,请不要使用
break
并反转放置其余字母的位置。您可以使用
continue
替代,或者更简单地说,只需反转
if
测试,并且只处理不是元音的字符:

def anti_vowel(text):
    p = ''
    for c in text:
        if c.lower() in 'aeiou':
            break
        p += c
    return p
现在,辅音置于任何前面的辅音之前,与文本相反:

def anti_vowel(text):
    p = ''
    for c in text:
        if c.lower() not in 'aeiou':
            p = c + p
    return p

def反_元音(文本):p=''表示文本中的c:如果c=='a'或c=='a':中断elif c=='e'或c=='e':中断elif c=='i'或c=='i':中断elif c=='o'或c=='o':中断elif c=='u'或c=='u':中断其他:p=p+c打印(anti_元音('Hello you'))您没有返回任何内容,函数需要返回,可能是
p
我感觉您想使用
继续
而不是
中断
定义anti_元音(文本):p=''表示文本中的c:如果c=='a'或c=='a':中断elif c=='e'或c=='e':中断elif c=='i'或c=='i':中断elif c=='o'或c=='o':中断elif c=='u'或c=='u':中断其他:p=p+c打印(anti_元音('Hello you'))您没有返回任何内容,函数需要返回,可能
p
我感觉您想使用
continue
而不是
break
def anti_元音(text):文本中c的p='':如果c='a'或c='a':bre