From 6d7ba58f880be618ade07f8ea080fe8c4bf8a896 Mon Sep 17 00:00:00 2001 From: cyfraeviolae Date: Wed, 3 Apr 2024 03:10:44 -0400 Subject: venv --- .../faker/providers/automotive/nl_NL/__init__.py | 77 +++++++++++++++++++++ .../nl_NL/__pycache__/__init__.cpython-311.pyc | Bin 0 -> 3062 bytes 2 files changed, 77 insertions(+) create mode 100644 venv/lib/python3.11/site-packages/faker/providers/automotive/nl_NL/__init__.py create mode 100644 venv/lib/python3.11/site-packages/faker/providers/automotive/nl_NL/__pycache__/__init__.cpython-311.pyc (limited to 'venv/lib/python3.11/site-packages/faker/providers/automotive/nl_NL') diff --git a/venv/lib/python3.11/site-packages/faker/providers/automotive/nl_NL/__init__.py b/venv/lib/python3.11/site-packages/faker/providers/automotive/nl_NL/__init__.py new file mode 100644 index 0000000..0dbab37 --- /dev/null +++ b/venv/lib/python3.11/site-packages/faker/providers/automotive/nl_NL/__init__.py @@ -0,0 +1,77 @@ +import re +import string + +from .. import Provider as AutomotiveProvider + + +class Provider(AutomotiveProvider): + """Implement automotive provider for `nl_NL` locale. + + Sources: + - https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_the_Netherlands + - https://www.cbs.nl/en-gb/figures/detail/82044eng + + .. |license_plate_car| replace:: + :meth:`license_plate_car() ` + + .. |license_plate_motorbike| replace:: + :meth:`license_plate_motorbike() ` + """ + + # License formats for cars / other vehicles than motorbikes + license_formats = ( + # Format 6 + "##-%?-??", + # Format 7 + "##-%??-#", + # Format 8 + "#-@??-##", + # Format 9 + "%?-###-?", + # Format 10 + "%-###-??", + ) + + # License formats for motorbikes. + # According to CBS, approximately 10% of road vehicles in the Netherlands are motorbikes + license_formats_motorbike = ( + "M?-??-##", + "##-M?-??", + ) + + # Base first letters of format + license_plate_prefix_letters = "BDFGHJKLNPRSTVXZ" + + # For Format 8 (9-XXX-99) "BDFGHJLNPR" are not used, + # as to not clash with former export license plates + license_plate_prefix_letters_format_8 = "KSTVXZ" + + def license_plate_motorbike(self) -> str: + """Generate a license plate for motorbikes.""" + return self.bothify( + self.random_element(self.license_formats_motorbike), + letters=string.ascii_uppercase, + ) + + def license_plate_car(self) -> str: + """Generate a license plate for cars.""" + # Replace % with license_plate_prefix_letters + temp = re.sub( + r"\%", + self.random_element(self.license_plate_prefix_letters), + self.random_element(self.license_formats), + ) + + # Replace @ with license_plate_prefix_letters_format_8 + temp = re.sub(r"\@", self.random_element(self.license_plate_prefix_letters_format_8), temp) + + return self.bothify(temp, letters=string.ascii_uppercase) + + def license_plate(self) -> str: + """Generate a license plate. + This method randomly chooses 10% between |license_plate_motorbike| + or 90% |license_plate_car| to generate the result. + """ + if self.generator.random.random() < 0.1: + return self.license_plate_motorbike() + return self.license_plate_car() diff --git a/venv/lib/python3.11/site-packages/faker/providers/automotive/nl_NL/__pycache__/__init__.cpython-311.pyc b/venv/lib/python3.11/site-packages/faker/providers/automotive/nl_NL/__pycache__/__init__.cpython-311.pyc new file mode 100644 index 0000000..12b3fa8 Binary files /dev/null and b/venv/lib/python3.11/site-packages/faker/providers/automotive/nl_NL/__pycache__/__init__.cpython-311.pyc differ -- cgit v1.2.3