How to remove a specific instance of a prefab from List?

Lets say the player picks up a clip. After the ammo runs out from that clip, What could I used to remove that clip from his inventory “List”? Here is the testing script I am using to find the appropriate command.

and the List script as well.

using UnityEngine;
using System.Collections;

public class PlayerScript : MonoBehaviour {

	
	// Update is called once per frame
	void Update () {

        //Using Input to test this function
        if (Input.GetKeyDown(KeyCode.Space))
        {
            Inventory invy = gameObject.GetComponent<Inventory>();
            invy.items.Remove();
        }
	}
}

using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class Inventory : MonoBehaviour {

    //public GameObject[] items;
    public List<GameObject> items;
 

	// Use this for initialization
	void Start () 
    {
        
	}
	
	// Update is called once per frame
	void Update () 
    {
	
	}

    void OnGUI()
    {
        GameObject sphere = GameObject.FindWithTag("Sphere");
        if (sphere != null && items.Contains(sphere))
           {
             GUI.Label(new Rect(100, 100, 100, 100), "You have a (or this many) sphere(s)");
           }
    }
}

You have the reference to the clip gameobject, I suppose, so you will use invy.items.Remove(yourClipGameObject)
By the way you should cache the Inventory script into a variable inside a Start function of PlayerScript instead of use GetComponent each time, for performance reason.