逻辑检查语句

时间:2021-01-11 08:57:07

标签: python

我需要在下面的代码中添加2条逻辑语句。如果您未满 18 岁,我需要一个,另一个只允许您输入 2 个字母来表示州。这两个语句都需要退出程序,我认为这就是我感到困惑的地方。我对 python 很陌生,所以非常感谢任何帮助。我想我可以放 if 语句,但我不知道如何让它们退出程序,我只知道如何让它们打印

print('Welcome to the US Voter Registration System')
con = input('Do You Want to Continue: Yes Or No? ')
while con == 'Yes':
    name = input('Please Enter Your First Name: ')
    name2 = input('Please Enter Your Last Name: ')

    age = int(input('Please Enter Your Age *** YOU MUST BE 18 OR OLDER ***: '))

    cit = input('Are You A US Citizen? Answer Yes or No: ')

    state = input('Please Enter Your State?' 'Please only 2 letters: ')

    zipc = int(input('Please Enter Your Zip Code? '))

    con = input('You Are Finished Please Type Done: ')

    print('NAME: ', name, name2)
    print('AGE: ', age)
    print('US CITIZEN:', cit)
    print('STATE: ', state)
    print('ZIP CODE: ', zipc)
    print('Thank You For Using the US Voter Registration System ')
    print('Please Check Your Mail For More Voting Information ')

1 个答案:

答案 0 :(得分:1)

您可以使用 sys.exit() 退出程序(请记住文件顶部的 import sys)。

您可以使用 if age < 18: 来检查年龄是否低于 18 岁(“如果年龄低于 18 岁”)。对于状态值的长度,您可以使用 len 函数,它以字符为单位为您提供字符串的长度(从技术上讲,它为您提供序列的长度或任何实现 __len__ 方法的东西,但这不是对您正在尝试做的事情很重要)。

您也可以使用 break 结束 while 循环而不是退出程序。

因此要实施这些措施:

import sys

print('Welcome to the US Voter Registration System')

...

    age = int(input('Please Enter Your Age *** YOU MUST BE 18 OR OLDER ***: '))

    if age < 18:
        print("Must be over 18!")
        sys.exit()  # or break to end the loop

    ..

    state = input('Please Enter Your State?' 'Please only 2 letters: ')
   
    if len(state) != 2:
        print("State must be exactly two letters.")
        sys.exit()  # or break to end the loop

    ..