Input.GetButtonDown

static function GetButtonDown (buttonName : String) : boolean

Description

Returns true during the frame the user pressed down the virtual button identified by buttonName.

You need to call this function from the Update function, since the state gets reset each frame. It will not return true until the user has released the key and pressed it again.

Use this only when implementing action like events IE: shooting a weapon.
Use Input.GetAxis for any kind of movement behaviour.

JavaScript
    // Instantiates a projectile whenever the user hits the Fire1 Button.
var projectile : GameObject;
function Update () {
if (Input.GetButtonDown ("Fire1")) {
Instantiate (projectile, transform.position, transform.rotation);
}
}

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
public GameObject projectile;
void Update() {
if (Input.GetButtonDown("Fire1"))
Instantiate(projectile, transform.position, transform.rotation) as GameObject;

}
}

import UnityEngine
import System.Collections

class example(MonoBehaviour):

public projectile as GameObject

def Update():
if Input.GetButtonDown('Fire1'):
(Instantiate(projectile, transform.position, transform.rotation) as GameObject)