def createVariable(self, name, type, dimensions):
shape = tuple([self.dimensions[dim] for dim in dimensions])<EOL>shape_ = tuple([dim or <NUM_LIT:0> for dim in shape])  <EOL>type = dtype(type)<EOL>typecode, size = type.char, type.itemsize<EOL>if (typecode, size) not in REVERSE:<EOL><INDENT>raise ValueError("<STR_LIT>" % type)<EOL><DEDENT>data = empty(shape_, dtype=type.newbyteorder("<STR_LIT:B>"))  <EOL>self.variables[name] = netcdf_variable(data, typecode, size, shape, dimensions)<EOL>return self.variables[name]<EOL>
Create an empty variable for the `netcdf_file` object, specifying its data
type and the dimensions it uses.

Parameters
----------
name : str
    Name of the new variable.
type : dtype or str
    Data type of the variable.
dimensions : sequence of str
    List of the dimension names used by the variable, in the desired order.

Returns
-------
variable : netcdf_variable
    The newly created ``netcdf_variable`` object.
    This object has also been added to the `netcdf_file` object as well.

See Also
--------
createDimension

Notes
-----
Any dimensions to be used by the variable should already exist in the
NetCDF data structure or should be created by `createDimension` prior to
creating the NetCDF variable.