[addresses] Generate house number related phrases
This commit is contained in:
26
scripts/geodata/addresses/house_numbers.py
Normal file
26
scripts/geodata/addresses/house_numbers.py
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
import random
|
||||||
|
|
||||||
|
from geodata.addresses.config import address_config
|
||||||
|
from geodata.addresses.numbering import NumberedComponent
|
||||||
|
from geodata.encoding import safe_decode
|
||||||
|
|
||||||
|
|
||||||
|
class HouseNumber(NumberedComponent):
|
||||||
|
@classmethod
|
||||||
|
def phrase(cls, number, language, country=None):
|
||||||
|
if number is not None:
|
||||||
|
prob_key = 'house_numbers.alphanumeric_phrase_probability'
|
||||||
|
key = 'house_numbers.alphanumeric'
|
||||||
|
dictionaries = ['house_numbers']
|
||||||
|
default = safe_decode(number)
|
||||||
|
else:
|
||||||
|
prob_key = 'house_numbers.no_number_probability'
|
||||||
|
key = 'house_numbers.no_number'
|
||||||
|
dictionaries = ['no_number']
|
||||||
|
default = None
|
||||||
|
|
||||||
|
phrase_prob = address_config.get_property(prob_key, language, country=country, default=0.0)
|
||||||
|
if random.random() < phrase_prob:
|
||||||
|
return cls.numeric_phrase(key, safe_decode(number), language,
|
||||||
|
dictionaries=dictionaries, country=country)
|
||||||
|
return default
|
||||||
Reference in New Issue
Block a user