need a little help converting a float var to a .ToString

I know there is a way to do it, but i can not remember and i can not find the info anywhere that would help me. I saw a few examples but none were what i needed
mainly it is the last line of code. i want to convert the variable batteryLife to a string, but that line with batteryLife.ToString gives me an error.

thanks

#pragma strict
var batteries: float = 2.0f;
var batteryLife: float = 420.0f;
var batteryReductionSpeed: float = 1.0f;

var lightRange: float = 100.0f;

var horizontalOffset01: float = 175f;
var verticalOffset01: float = 0.47f;

var horizontalOffset02: float = 0.37f;
var verticalOffset02: float = 0.4f;

var horizontalOffset03: float = 0.37f; //701
var verticalOffset03: float = -100f;    // 0.72

//var guiLifeOfBattery = guiText;
//var guiRemainingBatLife = guiText;



var instruction = "To Turn Flashlight on or off, press O";
var words = false;



function Awake () 
{
	
	GameObject.FindWithTag("HeadLamp").light.enabled = false;
	batteries--;
	//GameObject.Find("GUI Text_batteryLife").guiText.text = batteryLife.ToString();
	
	if(words)
	{
		instruction = null;
	}
	else
		{
			instruction = "To Turn Flashlight on or off, press O";
		}
	//guiLifeOfBattery.enabled = false;
	//guiRemainingBatLife.enabled = false;

}

function Update () 
{	
	if(GameObject.FindWithTag("HeadLamp").light.enabled == true)
	{
	
	
		
		//guiLifeOfBattery.enabled = true;
		//guiRemainingBatLife.enabled = true;
		instruction = null;
		
		
		
		batteryLife = batteryLife -(batteryReductionSpeed * Time.deltaTime);
		//GameObject.Find("GUI Text_batteryLife").guiText.text = batteryLife.ToString("#.");
		
		//guiLifeOfBattery.pixelOffset = Vector2(Screen.width * horizontalOffset02, Screen.height * verticalOffset02);
		//guiRemainingBatLife.pixelOffset = Vector2(Screen.width * horizontalOffset01, Screen.height * verticalOffset01);
		
	}
		if(Input.GetKeyDown("o") && !GameObject.FindWithTag("HeadLamp").light.enabled == true && batteries >= 0) 
		{
			if(batteryLife <= 0 && batteries > 0)
			{
				batteries--;
				batteryLife = 420;
				lightRange = 100;
				GameObject.FindWithTag("HeadLamp").light.range = lightRange;
				
			}
			GameObject.FindWithTag("HeadLamp").light.enabled = true;
			
		}
		
		
		else if(Input.GetKeyDown("o") && GameObject.FindWithTag("HeadLamp").light.enabled == true || batteryLife == 0)
	{
		
		GameObject.FindWithTag("HeadLamp").light.enabled = false;
		instruction =	"To Turn Flashlight on or off, press O";
		
	}
	if(batteryLife <= 0)
		{
			batteryLife = 0;
			GameObject.FindWithTag("HeadLamp").light.enabled = false;
			instruction =	"To Turn Flashlight on or off, press O";
			
		}
		if(batteryLife <= 50)
		{

			GameObject.FindWithTag("HeadLamp").light.range = lightRange * batteryLife / 20;
			
			
				if(batteryLife <= 25)
				{

					GameObject.FindWithTag("HeadLamp").light.range = lightRange * batteryLife / 20;
			
				
				}
		}
	
		
	
	}
	
	
	function OnGUI()
	{
				
			
			GUI.Label (Rect (Screen.width /2 -100, Screen.height /6 + verticalOffset03, 210, 25), instruction);
			
			GUI.Label(Rect (Screen.width / 8 - horizontalOffset01, Screen.height /6 + verticalOffset03, 210,25), "Battery Life Remaining: ", batteryLife.ToString);
	}

GUI.Label accepts only one string parameter, thus you must concatenate what you want to show in a single string. Furthermore, ToString is a function: ToString() displays the value in a default format, while ToString(“F2”) - for instance - displays the value with two decimals. Your code should be something like this:

GUI.Label(Rect (...), "Battery Life Remaining: "+batteryLife.ToString());

Another approach is to just concatenate the numeric value to a string - ToString() is internally called by the compiler in such cases:

GUI.Label(Rect (...), "Battery Life Remaining: "+batteryLife);