Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.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 我的逻辑运算符理解尝试 #/usr/bin/env蟒蛇3 状态=错误 当status==True时: 状态==“已退休” def ageCheck(): 年龄=整数(输入(“输入您的年龄:”) 如果ageCheck.age()>=65或age=65且状态=“已退休”)或ageCheck.age()=65或age_Python_Python 3.x - Fatal编程技术网

Python 我的逻辑运算符理解尝试 #/usr/bin/env蟒蛇3 状态=错误 当status==True时: 状态==“已退休” def ageCheck(): 年龄=整数(输入(“输入您的年龄:”) 如果ageCheck.age()>=65或age=65且状态=“已退休”)或ageCheck.age()=65或age

Python 我的逻辑运算符理解尝试 #/usr/bin/env蟒蛇3 状态=错误 当status==True时: 状态==“已退休” def ageCheck(): 年龄=整数(输入(“输入您的年龄:”) 如果ageCheck.age()>=65或age=65且状态=“已退休”)或ageCheck.age()=65或age,python,python-3.x,Python,Python 3.x,实际上,我只是试图建立一个程序来理解逻辑运算符。问题是它一直抛出这个错误 #!/usr/bin/env python3 status = False while status == True: status == "retired" def ageCheck(): age = int(input("Enter Your Age: ")) if ageCheck.age() >= 65 or age <18: status = True

实际上,我只是试图建立一个程序来理解逻辑运算符。问题是它一直抛出这个错误

#!/usr/bin/env python3

status = False

while status == True:
    status == "retired"

def ageCheck():
    age = int(input("Enter Your Age: "))
    if ageCheck.age() >= 65 or age <18:
        status = True

def discountCheck():
    if (ageCheck.age() >= 65 and status == "retired") or ageCheck.age() < 18: 
        print("You get 5% off")

def welcome():
    print()
    print("Welcome to Age Test")


welcome()

ageCheck()

discountCheck()
“文件”/home/pi/Murach/randomtests/while test.py”,第10行,在ageCheck中

如果ageCheck.age()>=65或age
ageCheck
是一个函数-您可以访问它的
age()
属性,它没有属性-因此出现错误

改用
age

注意范围限定-
ageCheck()
中的
status
不是全局
status
而是局部变量。根据您的函数,您可以将
status
用作
string
bool

决定哪一个或使用两个不同的变量作为状态(真/假)和状态(退休或不退休)

您可以像这样重写一些代码:

"File "/home/pi/Murach/randomtests/while test.py", line 10, in ageCheck
    if ageCheck.age() >= 65 or age <18:
AttributeError: 'function' object has no attribute 'age'"
65个国家的产出:

Welcome to Age Test
Enter Your Age: 17
You get 5% off
You get 5% off

HTH

多亏@PatrickArtner,我才能够用最初的IF语句来构建程序。谢谢

Welcome to Age Test
Enter Your Age: 65
You get 5% off
No discount, sorry.
!/usr/bin/env python3
def状态检查(somage):
如果somage>=65:
返回真值
其他:
返回错误
def ageCheck():
尽管如此:
年龄=输入(“输入您的年龄:”)
如果age.isdigit()和int(age)>0:
返回整数(年龄)
def折扣支票(someage,mystatus):
如果(某个年龄>=65,mystatus==“isAble”)或某个年龄<18:
打印(“您可以享受5%的折扣”)
其他:
打印(“年龄不可接受”)
def welcome():
打印()
打印(“欢迎参加年龄测试”)
欢迎
年龄=年龄检查()
状态检查(年龄)
def ifstatus():
如果状态检查(年龄)=真:
status=“isAble”
返回str(状态)
status=ifstatus()
折扣检查(年龄、状态)

age check.age()
应该是什么?只需使用
age
。您定义的是一个函数,而不是一个对象。ageCheck是一个函数-您访问它的“age()”属性,而它没有属性。因此会出现错误。请改用
age
来代替。注意范围-ageCheck()中的
状态不是您的全局状态,而是一个局部变量。您可以使用
status
作为字符串或bool-具体取决于您的函数。决定使用哪一个变量,并使用两个不同的变量作为status(true/false)和status(as retired)变量。agecheck是我试图了解status==“retired”在程序中的工作方式。(if(agecheck.age()>=65和status==“retired”)或ageCheck.age()<18:)我正试图将这个等式应用到一个工作程序中为什么会有两个折扣检查?(o-o)@HectorAgosto展示了
退休
仍然活跃
之间的区别哇。我一直在读它,直到它有意义。谢谢你帮助我现在对代码有了更好的理解!!:DD你帮了大忙。不过,对于两个折扣支票,是不是“仍然活跃”“返回true,因为没有对此进行检查?我看到了retired的检查,但是为什么kickin仍然返回true,myStatus不应该将其设置为false,因为它没有退休吗?哦,仍然kickin作为isretired的值输入,因为它连接到myStatus。但既然它还没有完全失效,为什么要变为真呢?@Hectoragos你的代码以
状态
错误
开始,然后是一个潜在的无休止的
while
循环(仅在
状态==true
时输入),该循环测试
状态==“失效”
但对测试结果没有做任何处理-因此,如果
状态
:无休止的循环。我(可能是错误地)扣除了您想要区分65岁仍在工作的ppl(为什么不?)和65岁已停止工作的ppl(
状态
为“已退休”)。折扣仅适用于<18或>=65且不再有效的ppl。因此出现了差异。这就是为什么
status
在>65y时获得折扣很重要的原因
Welcome to Age Test
Enter Your Age: 65
You get 5% off
No discount, sorry.
#!/usr/bin/env python3


def statusCheck(somage):
    if somage >= 65:
        return True
    else:
        return False

def ageCheck():
    while True:

        age = input("Enter Your Age: ")

        if age.isdigit() and int(age) > 0: 
            return int(age)

def discountCheck(someage, mystatus):
        if (someage >= 65 and mystatus == "isAble") or someage < 18: 
            print("You get 5% off")
        else:
            print("Age inacceptable")

def welcome():
    print()
    print("Welcome to Age Test")


welcome()

age = ageCheck()
statusCheck(age)

def ifstatus():
    if statusCheck(age) == True:
        status = "isAble"
        return str(status)

status =  ifstatus()

discountCheck(age, status)