使用 while 循环创建一个函数
create a function using while loop
如何将旅行票价添加到适用于许多旅行票价的 while 循环(错误消息)中?我想使用 while 循环创建一个函数。就像在每次 travelFare 之后不插入错误消息一样,我想创建一个函数来阻止自己重复。和我使用的 spyder。
travelfare1=float(input("enter travel fare 1:" ))
travelfare2=float(input("enter travel fare 2: "))
travelfare3=float(input("enter travel fare 3: "))
while travelfare1 <5 or travelfare1 >20:
print("invalid entry")
travelfare1=float(input("enter travel fare 1:" ))
请帮忙
你可以这样做:
def get_travel_fare(number):
travelfare = float(input(f"enter travel fare {number}:" ))
while travelfare < 5 or travelfare > 20:
print("invalid entry")
travelfare = float(input(f"enter travel fare {number}:" ))
return travelfare
travelfare1 = get_travel_fare(1)
travelfare2 = get_travel_fare(2)
travelfare3 = get_travel_fare(3)
试试这个:
def get_fare(mini, maxi):
fare = float(input("travel fare please: "))
while fare not in range(mini, maxi+1):
print("invalid value, please enter a new one")
fare = float(input("travel fare please: "))
return fare
travel_fares = [get_fare(5,20), get_fare(5,20), get_fare(5,20)] # list of the functions (which will make a list of the return values after they're run)
print(f"average: {sum(travel_fares)/len(travel_fares)}") # sum of elements in list divided by length of list (amount of items)
输入时:15
、10
和5
:
travel fare please: 5
travel fare please: 10
travel fare please: 15
average: 10
如何将旅行票价添加到适用于许多旅行票价的 while 循环(错误消息)中?我想使用 while 循环创建一个函数。就像在每次 travelFare 之后不插入错误消息一样,我想创建一个函数来阻止自己重复。和我使用的 spyder。
travelfare1=float(input("enter travel fare 1:" ))
travelfare2=float(input("enter travel fare 2: "))
travelfare3=float(input("enter travel fare 3: "))
while travelfare1 <5 or travelfare1 >20:
print("invalid entry")
travelfare1=float(input("enter travel fare 1:" ))
请帮忙
你可以这样做:
def get_travel_fare(number):
travelfare = float(input(f"enter travel fare {number}:" ))
while travelfare < 5 or travelfare > 20:
print("invalid entry")
travelfare = float(input(f"enter travel fare {number}:" ))
return travelfare
travelfare1 = get_travel_fare(1)
travelfare2 = get_travel_fare(2)
travelfare3 = get_travel_fare(3)
试试这个:
def get_fare(mini, maxi):
fare = float(input("travel fare please: "))
while fare not in range(mini, maxi+1):
print("invalid value, please enter a new one")
fare = float(input("travel fare please: "))
return fare
travel_fares = [get_fare(5,20), get_fare(5,20), get_fare(5,20)] # list of the functions (which will make a list of the return values after they're run)
print(f"average: {sum(travel_fares)/len(travel_fares)}") # sum of elements in list divided by length of list (amount of items)
输入时:15
、10
和5
:
travel fare please: 5
travel fare please: 10
travel fare please: 15
average: 10