如果不是,如何使函数输入成为一个字符串?

5br*_*mzh 1 python string input function python-2.7

所以基本上,假设您定义了一个函数,然后在函数之后在()括号中写入一些东西.如果我写函数(同性恋),它最终会被'错误名称未定义'Python2.73

def lenRecur(aStr):
    '''
    aStr: a string

    returns: int, the length of aStr
    '''
    print type(aStr)
    return

def lenRecur2(aStr):
    '''
    aStr: a string

    returns: int, the length of aStr
    '''
    s = str(aStr)
    print type(s)
    return
Run Code Online (Sandbox Code Playgroud)

因此,当我输入lenRecur(同性恋)或lenRecur2(同性恋)时,无论我做什么,它都会以错误结束.有没有办法避免它?不使用""引号.

Vol*_*ity 6

否 - 除非您的输入已经是包含字符串(或其他对象)的变量.

但是,您可以使用一个try-except块(但如果出现错误,它实际上不会执行任何操作).

try:
    lenRecur(foo)
    lenRecur2(foo)
except NameError:
    pass
Run Code Online (Sandbox Code Playgroud)