class_docstr: Base class for vectorized environments. Runs multiple independent copies of the same environment in parallel.
  
  This is not the same as 1 environment that has multiple subcomponents, but it is many copies of the same base env.
  
  Each observation returned from vectorized environment is a batch of observations for each parallel environment.
  And :meth:`step` is also expected to receive a batch of actions for each parallel environment.
  
  Notes:
      All parallel environments should share the identical observation and action spaces.
      In other words, a vector of multiple different environments is not supported.
docstr: Set a property in each sub-environment.
  
  Args:
      name (str): Name of the property to be set in each individual environment.
      values (list, tuple, or object): Values of the property to be set to. If `values` is a list or
          tuple, then it corresponds to the values for each individual environment, otherwise a single value
          is set for all environments.
code: def set_attr(self, name: str, values: Union[list, tuple, object]):
      """Set a property in each sub-environment.
  
      Args:
          name (str): Name of the property to be set in each individual environment.
          values (list, tuple, or object): Values of the property to be set to. If `values` is a list or
              tuple, then it corresponds to the values for each individual environment, otherwise a single value
              is set for all environments.
      """
  
imports: from typing import Any, List, Optional, Tuple, Union
  import numpy
  import gym
  from gym.vector.utils.spaces import batch_space
label_desc: Use image node_id 12 for calling the VectorEnv obj's underlying member method code with example usage: obj.set_attr(name, values) without return types