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)“两个输入均无效”。
答案 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')