-1

我在我的 Mac 上使用 python 并通过 wrangler 使用 python 并且很多东西随机出错所以我认为我做错了什么。我有一个非常简单的程序,当我在终端上以 bash 运行它时,它不会出现。这是代码:

def shoes():
    j= "jordans"
    a= "adidas"
    n= "nikes"
    question = input("whats ur fav. shoe?")
if a:
    return a

我像这样在 bash 中访问它:

cd ~/Desktop/scripts

ls

python shoe.py

然后什么都没有出现

4

2 回答 2

1

添加这个:

if __name__=='__main__':
    shoes()

如果你想展示一些东西,使用print 123sys.stdout(123)

于 2013-04-09T02:13:01.230 回答
1

你在那里做什么:

def shoes():
    j= "jordans"
    a= "adidas"
    n= "nikes"
    question = input("whats ur fav. shoe?")
    if a:
        return a

只是命名-定义-发明一个函数,该函数shoes()脚本中的其他所有位置都调用(之后)调用。

当你想调用它时,你应该在某个地方以这种方式显式调用它:shoes()

如果您希望您的 python 脚本定义一个函数,然后使用它,您应该编写:

# comments start of your script

#there I am defining the function shoes()
def shoes():
    j= "jordans"
    a= "adidas"
    n= "nikes"
    question = input("whats ur fav. shoe?")
    if a:
        return a

#there I'm calling right now the function shoes()
shoes()   # there I do it inside the main script

您似乎是新手,只是函数的另一个示例:

def unotherfunction(i):
    for i in range(0,i+1):
        shoes()

#If I call unotherfunction(), then, only then, shoes will be called twice, or fourth, or 7th or depending on the number your set to i like 2, 4 or 7..

unotherfunction(5) # will call 5 times your function shoes() ( asking you 5 times the same question of course ;-)

可选地,也许您还应该添加一个测试,例如:

question = input("whats ur fav. shoe?")
if a = question:
    return a

这将使输入更有意义。否则,您通过键盘输入的内容根本不属于您的测试。

然后再次警告,您只有一条返回可观价值的路径a...注意...您会看到...在其他路径中它会None默默返回并给您带来惊喜...

于 2013-04-09T02:26:21.480 回答