Python 3.x SyntaxError:将python模块作为脚本执行时语法无效

Python 3.x SyntaxError:将python模块作为脚本执行时语法无效,python-3.x,Python 3.x,以上是我的练习代码,另存为“namerating.py”。我正在努力学习。 在shell中尝试以下代码时,出现无效语法错误 def good(n): if len(n)>5: print('good name') else: print('sorry better luck next time') def nametest(n): if n.isalpha: print("yes sounds good") else:

以上是我的练习代码,另存为“namerating.py”。我正在努力学习。 在shell中尝试以下代码时,出现无效语法错误

def good(n):
 if len(n)>5:
     print('good name')
 else:
     print('sorry better luck next time')

def nametest(n):
    if n.isalpha:
        print("yes sounds good")
    else:
        print("no its not a name !")


if __name__ == "__main__":
    import sys
    nametest(sys.argv[1])
下面是实际误差

python namerating.py 23
文件“”,第1行
python namerating.py 23
^
SyntaxError:无效语法

引发此错误是因为您没有正确识别good()函数代码块

固定代码:

File "<pyshell>", line 1
    python namerating.py 23
                    ^
SyntaxError: invalid syntax

如果没有提供函数名,我希望默认运行namtest函数。在这种情况下,解决办法是什么?这是另一个问题,肯定有答案。
def good(n):
    if len(n)>5:
        print('good name')
    else:
        print('sorry better luck next time')

def nametest(n):
    if n.isalpha:
        print("yes sounds good")
    else:
        print("no its not a name !")


if __name__ == "__main__":
    import sys
    nametest(sys.argv[1])