要返回四个选项,没有任何线索

时间:2019-01-03 19:25:20

标签: python

def unit():

    unit = input("enter miles or kilometer")
    miles = ["kilometer","miles"]
    i = 0
    s=[]
    fact = True
    while i < 2 and fact:
            b = miles[i] == unit
            c= []
            c = int(b)
            i = i + 1
            s.insert(i,c)              
            while  c > 0:
                    i=2
                    valid=0
                    Speed = input("enter speed")
                    valid = Speed.isdigit() == True
                     c = int(valid) 
                     s.insert(i,c)
                     print(s)
                     i = i+1                      
          fact =False
          break     

print(["not valid entry","valid"][c==d])
unit()

大家好,我是新来的编码人员。我想显示下面尝试的四个中的一个,但是只允许我两个。我仅限于使用if语句以及其他我只能在for和while循环中使用的函数,列出非常困难。 输入的是英里或公里,速度=整数 输出应低于 1)输入均为有效’, 2)“速度不是正整数”, 3)“单位必须是英里或公里”, 4)“两个输入均无效”。

1 个答案:

答案 0 :(得分:1)

感谢您的澄清。在下文中,我仅根据需要使用while循环和列表。我没有使用任何for循环,但我希望这没问题:

def units():

    units = ['miles', 'kilometres']

    unit = input('miles or kilometres?: ')
    speed = input('enter speed: ')

    while unit not in units and int(speed) < 0:
        print('Both inputs are not valid')
        break
    else:
        while int(speed) < 0:
            print('Speed not a positive whole number')
            break
        else:
            while unit not in units:
                print('The units must be either miles or kilometres')
                break
            else:
                print('Inputs are all valid')