|
2 | 2 | import re |
3 | 3 | from dataclasses import dataclass, field |
4 | 4 | from pathlib import Path |
5 | | -from typing import TYPE_CHECKING, Optional |
| 5 | +from typing import TYPE_CHECKING |
6 | 6 |
|
7 | 7 | import genno |
8 | 8 | import pandas as pd |
@@ -73,7 +73,7 @@ def get(self) -> "AnyQuantity": |
73 | 73 | return load_file(self.path, dims=dims) |
74 | 74 |
|
75 | 75 |
|
76 | | -def get_emission_factors(units: Optional[str] = None) -> "AnyQuantity": |
| 76 | +def get_emission_factors(units: str | None = None) -> "AnyQuantity": |
77 | 77 | """Return carbon emission factors. |
78 | 78 |
|
79 | 79 | Values are from the file :file:`message_ix_models/data/ipcc/1996_v3_t1-2.csv`, in |
@@ -152,7 +152,7 @@ def get_emission_factors(units: Optional[str] = None) -> "AnyQuantity": |
152 | 152 | def add_tax_emission( |
153 | 153 | scen: Scenario, |
154 | 154 | price: float, |
155 | | - conversion_factor: Optional[float] = None, |
| 155 | + conversion_factor: float | None = None, |
156 | 156 | drate_parameter="drate", |
157 | 157 | ) -> None: |
158 | 158 | """Add a global CO₂ price to `scen`. |
@@ -217,7 +217,7 @@ def add_tax_emission( |
217 | 217 | scen.add_par(name, data) |
218 | 218 |
|
219 | 219 |
|
220 | | -def split_species(unit_expr: str) -> tuple[str, Optional[str]]: |
| 220 | +def split_species(unit_expr: str) -> tuple[str, str | None]: |
221 | 221 | """Split `unit_expr` to an expression without a unit mention, and maybe species.""" |
222 | 222 | if match := re.fullmatch("(.*)(CO2|C)(.*)", unit_expr): |
223 | 223 | return f"{match.group(1)}{match.group(3)}", match.group(2) |
|
0 commit comments