Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.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_Python 3.x - Fatal编程技术网

在python中返回字符串并仅获取空数组

在python中返回字符串并仅获取空数组,python,python-3.x,Python,Python 3.x,我试图返回一个数的除数数组。如果数字是素数,我想返回字符串,'(整数)是素数'。我的函数不是返回这个字符串,而是返回一个空数组 代码: def除数(num): i=2 数组=[] 而我0: 返回数组 其他: prime='%i是prime'%num 返回素数 除数(3) 谢谢你的帮助 > p>您的函数确实返回字符串,您看到的空数组是在代码中间的打印(数组)语句的结果,我假设您在调试中添加了。考虑删除它。 使用print(除数(3))实际显示结果字符串(否则它不会像现在这样显示)。您看到的是执行

我试图返回一个数的除数数组。如果数字是素数,我想返回字符串,'(整数)是素数'。我的函数不是返回这个字符串,而是返回一个空数组

代码:

def除数(num):
i=2
数组=[]
而我0:
返回数组
其他:
prime='%i是prime'%num
返回素数
除数(3)

谢谢你的帮助

> p>您的函数确实返回字符串,您看到的空数组是在代码中间的<代码>打印(数组)语句的结果,我假设您在调试中添加了。考虑删除它。


使用
print(除数(3))
实际显示结果字符串(否则它不会像现在这样显示)。

您看到的是执行函数时打印的空数组。您的函数正确返回字符串,因为3是素数,但您只是没有将函数的返回值赋给任何变量。这应该可以实现你想要的

def divisors(num):
    i = 2
    array = []
    while i < num:
        if num % i == 0:
            array.append(i)
        i += 1
    # print(array)
    if len(array) > 0:
        return array
    else:
        prime = '%i is prime' %num
        return prime

value = divisors(3)
print(value)
不,不是吗?(您可能正在查看控制台输出,其中打印空数组,但没有对函数结果执行任何操作)
def divisors(num):
    i = 2
    array = []
    while i < num:
        if num % i == 0:
            array.append(i)
        i += 1
    # print(array)
    if len(array) > 0:
        return array
    else:
        prime = '%i is prime' %num
        return prime

value = divisors(3)
print(value)
'3 is prime'