首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在python 3中编写成员资格测试函数时出现结果错误

在python 3中编写成员资格测试函数时出现结果错误
EN

Stack Overflow用户
提问于 2018-06-01 02:50:52
回答 1查看 31关注 0票数 0

我试图用python编写一个使用列表和数字的成员资格测试函数。但它并没有产生预期的结果。我希望得到True或False,但它显示为“None”。任何建议都将不胜感激。谢谢。

下面是我在代码中写的内容:

def bln(x,num):
    x = []
    num = int()
    if (num in x):
        return True

num = 4
x = [i for i in range (1,5)]
print(x)
y = bln(x,num)
print(y)

输出:

[1, 2, 3, 4]
None
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-01 02:57:45

您覆盖了函数参数,因此您没有使用要传递的值。这是正确的方式:

def bln(x,num):
    if (num in x):
        return True

澄清你在哪里做错了什么。让我们以一个将两个数字相乘的函数为例:

def multiply_numbers(x,y):
    return x*y

print(multiply_numbers(3,5)) #15 - all good, numbers are correctly multiplied

def multiply_numbers(x,y):

    # x parameter is overwritten here, and will ALWAYS have this values,
    #no matter what value you pass when you call the function
    x = 5 
    y = 5
    return x*y

print(multiply_numbers(3,5)) #25 - with every input you pass
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50630947

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档