繁体   English   中英

使用内部用户输入作为函数Python中的输入

[英]Use user input within as input in a function Python

我目前在Python 3中遇到一些麻烦。我试图弄清楚如何使用存储在pension_contribution pension()incomepension_contribution中的用户输入,但是什么也没有发生。 这些用户输入应该放在哪里才能被认为是输入,以便功能可以工作?

income = input(int("What is your annual income?"))
pension_contribution = input(int("What is your monthly pension contribution?"))

def pension(pension_contribution, income):
    if pension_contribution > ((income//12) * .075):
        print ("Your pension contribution is too high. Monthly pension contributions may not exceed 7.5% of your gross monthly income")
    else:
        print("Your annual pension contribution is R", pension_contribution * 12)

1)您的缩进似乎不对
2)您需要调用该函数

income = input(int("What is your annual income?"))
pension_contribution = input(int("What is your monthly pension contribution?"))

def pension (pension_contribution, income):

    if pension_contribution > ((income//12) * .075):
        print ("Your pension contribution is too high. Monthly pension contributions may not exceed 7.5% of your gross monthly income")

    else:
        print("Your annual pension contribution is R", pension_contribution * 12)

pension(pension_contribution, income)

您可以通过3种不同的方式执行此操作:

1.只需调用该函数

def pension (pension_contribution, income):

    if pension_contribution > ((income//12) * .075):
        print ("Your pension contribution is too high. Monthly pension contributions may not exceed 7.5% of your gross monthly income")

    else:
        print("Your annual pension contribution is R", pension_contribution * 12)

income = int(input("What is your annual income?"))
pension_contribution = int(input("What is your monthly pension contribution?")) 

pension(pension_contribution, income) #call function

2.将变量放入函数中

def pension ():
    income = int(input("What is your annual income?"))
    pension_contribution = int(input("What is your monthly pension contribution?"))
    if pension_contribution > ((income//12) * .075):
        print ("Your pension contribution is too high. Monthly pension contributions may not exceed 7.5% of your gross monthly income")

    else:
        print("Your annual pension contribution is R", pension_contribution * 12)


pension() #still have to call function

2.全局变量 (不推荐)

income = int(input("What is your annual income?"))
pension_contribution = int(input("What is your monthly pension contribution?"))

def pension ():
    global income, pension_contribution
    if pension_contribution > ((income//12) * .075):
        print ("Your pension contribution is too high. Monthly pension contributions may not exceed 7.5% of your gross monthly income")

    else:
        print("Your annual pension contribution is R", pension_contribution * 12)

pension() #still have to call function

请注意,每次必须如何“调用”该函数。 否则,程序将成功运行,但永远不会打扰进入该功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM