Changing Rate of Change from Key Key Input Values

What's a simple way to slow the effects of key input for more realistic simulation. For example, if I use up and down arrow keys to control a throttle for my engine so that 0 key input is 0.0 rpm and 1.0 is 2000 rpm, but the engine rpm changes slower than the key input value changes. So where the key value might go from 0-1 in a second, the rpms need to go 0-2000 rpm in 10 seconds to be realistic. Of course it needs to be dynamic so if the input goes back to 0 before the rpms go to 2000, the calculation adjusts.

Don't set the values based directly on the input, but set target values and move towards them. Also, you're ambiguous as to whether you are using axes or keys directly, but I'll assume you meant input axes and work with that.

var target : float; //the speed we want to be at
var maxStep : float; //the most we can change speed per second
var current : float; //the speed we are at

function Update() {
    target = Input.GetAxis("Vertical"); //explicit values
    //target+= Input.GetAxis("Vertical"); //additive changes

    //never change by more than maxStep per second
    current = Mathf.MoveTowards(current, target, maxStep * Time.deltaTime);

    //if(current <= 0) current = 0; //deal with negative input
}