python - 我的功能没有运行

标签 python eclipse pydev termination

使用随机函数并使用 3 个不同的函数做 3 件事,第一个给我的值是 1,10,随机显示在 10 个整数的列表中。第二个给了我一个列表值 1,10 并将它们平方。最后但并非最不重要的是,第三个选出了可以被三整除的数字。问题是我的程序没有运行,而在 eclipse 上程序没有错误,但我的程序终止时没有打印任何东西。请帮助我...

import random

def main():

def rand10():
    my_list = []
    for _ in xrange(10):
        my_list.append(random.randint(0,10))
    print my_list

def squareint_():
    squares = []
    for _ in xrange(0,10):
        squares.append(random.randint(0,10))**2
    print squares


def div3():
    divlist = []
    num = range(1,10)
    if (num % 3 == 0):
        for _ in xrange(20):
            divlist.append(random.randint(0,10))
        print divlist



if __name__ == '__main__':
    main()

最佳答案

您只是在调用 main(),而不是 main() 中嵌套的任何 函数

使用 if __name__ == '__main__': 不会神奇地调用所有函数。

如果您的 main 函数是这样的:

def main():
    squareint_()
    div3()
    rand10()

然后您将按原样调用其他函数,main 不执行任何操作或不返回任何内容。

就您的方法而言,squares.append(random.randint(0,10))**2 无效,您不能在一个列表方法。

它需要在 paren squares.append(random.randint(0,10)**2)

此外,num 是一个列表,因此您不能使用 if num % 3 == 0:

你可以使用类似的东西:

def div3():
    divlist = []
    num = range(1,10)
    for n in num: # loop over the list elements
        if n % 3 == 0:
            for _ in xrange(20):
                divlist.append(random.randint(0,10))
    print divlist

关于python - 我的功能没有运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25275082/

相关文章:

python - 如何使用Python Request实现ajax请求

python - 在 eclipse 中缩进 python 文件(使用 pydev)

python - 无法获取建议的枚举值

python - 从 python 中的集合列表中删除大括号

python - 如何在 Python 中深度复制 xml 子元素

python - Mechanize 复选框控件不起作用python

android - 如何使用 ADT 插件将 "Android Design Support Library"添加到 Eclipse?

java - android ListView 适配器手动调用 getview 方法(刷新列表行)

android - 刚刚安装了 Windows 10 和 Eclipse 不再启动

python - 无法让 python Turtle 在 Linux 上的 Pydev 中工作