Python 如何在if语句中选择函数
我需要帮助,允许用户选择一个值并相应地调用函数Python 如何在if语句中选择函数,python,function,input,Python,Function,Input,我需要帮助,允许用户选择一个值并相应地调用函数 weight = input('Enter K for kilos or P for pounds : ') unit = weight if unit == "K": def metricTopound(kilograms): pounds = kilograms * 2.2 ounces = pounds * 16 return int(pounds), ounces % 16
weight = input('Enter K for kilos or P for pounds : ')
unit = weight
if unit == "K":
def metricTopound(kilograms):
pounds = kilograms * 2.2
ounces = pounds * 16
return int(pounds), ounces % 16
kilograms = float(input("How many Kilos ? "))
lb, o = metricTopound(kilograms)
print('The amount of pounds you entered is {}. '\
'This is {} pounds and {} ounces.'.format(kilograms, lb, o))
elif unit == " P ":
def poundsToMetric(pounds):
kilograms = pounds / 2.2
grams = kilograms * 1000
return int(kilograms), grams % 1000
pounds = float(input("How many Pounds? "))
kg, g = poundsToMetric(pounds)
print('The amount of pounds you entered is {}. '\
'This is {} kilograms and {} grams.'.format(pounds, kg, g))
用户应该能够选择
p
以获得千克的重量,或者选择K
以获得磅的重量。您可能需要事先定义功能:
def metricTopound(kilograms):
pounds = kilograms * 2.2
ounces = pounds * 16
return int(pounds), ounces % 16
def poundsToMetric(pounds):
kilograms = pounds / 2.2
grams = kilograms * 1000
return int(kilograms), grams % 1000
weight = input('Enter K for kilos or P for pounds : ')
unit = weight
if unit == "K":
kilograms = float(input("How many Kilos ? "))
lb, o = metricTopound(kilograms)
print('The amount of kilograms you entered is {}. '\
'This is {} pounds and {} ounces.'.format(kilograms, lb, o))
elif unit == "P":
pounds = float(input("How many Pounds? "))
kg, g = poundsToMetric(pounds)
print('The amount of pounds you entered is {}. '\
'This is {} kilograms and {} grams.'.format(pounds, kg, g))
return
语句下面的行永远不会执行“P”
传递给比较,因此用户需要先添加空格,然后添加P和尾随空格def metricTopound(kilograms):
pounds = kilograms * 2.2
ounces = pounds * 16
return int(pounds), ounces % 16
def poundsToMetric(pounds):
kilograms = pounds / 2.2
grams = kilograms * 1000
return int(kilograms), grams % 1000
unit = raw_input('Enter K for kilos or P for pounds : ') #get as string
weight= input("Ener Weight") #get as integer
if unit == "K":
metricTopound(weight)
kilograms = float(input("How many Kilos ? "))
lb, o = metricTopound(kilograms)
print('The amount of pounds you entered is {}. '\
'This is {} pounds and {} ounces.'.format(kilograms, lb, o))
elif unit == "P":
poundsToMetric(weight)
pounds = float(input("How many Pounds? "))
kg, g = poundsToMetric(pounds)
print('The amount of pounds you entered is {}. '\
'This is {} kilograms and {} grams.'.format(pounds, kg, g))
为什么要在
if-else
块中定义函数?在外部定义它们,并在满足条件时调用它们。为什么在函数执行完成之前,您的函数会返回()?谢谢,我非常感谢您的帮助。脚本现在正在运行