irl_benchmark/experiment/run.py
Function __init__
has 7 arguments (exceeds 4 allowed). Consider refactoring. Open
Open
def __init__(self, env_id: str, expert_trajs_path: str,
Method "__init__" has 8 parameters, which is greater than the 7 authorized. Open
Open
def __init__(self, env_id: str, expert_trajs_path: str,
irl_alg_factory: Callable[[gym.Env, List[Dict[str, list]]],
BaseIRLAlgorithm],
metrics: List[BaseMetric], rl_config: dict, irl_config: dict,
run_config: dict):
- Read upRead up
- Exclude checks
A long parameter list can indicate that a new structure should be created to wrap the numerous parameters or that the function is doing too many things.
Noncompliant Code Example
With a maximum number of 4 parameters:
def do_something(param1, param2, param3, param4, param5): ...
Compliant Solution
def do_something(param1, param2, param3, param4): ...