# Locale th_TH

## `faker.providers.address`

class faker.providers.address.th_TH.Provider(generator: Any)

  Bases: `Provider`

  address() → str
    Example:

      ‘791 Crist Parks, Sashabury, IL 86039-9874’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.address()
        ...
        '487 ถ.ไม้แดง พัทลุง 85930'
        '1 ซ.นกทอง อ.ห้วยขวาง อุตรดิตถ์ 34110'
        '8/1 ถนนนาถะพินธุ ต.เว่อเล็ก อ.เรณูนคร ลำพูน'
        '801 ถ.พงศ์ฉบับนภา กระบี่ 85350'
        '933/2 ถนนถนิมมาศ บ้านสุขเดือนห้า จ.สุราษฎร์ธานี 51850'

  administrative_unit() → str
    Example:

      ‘อุบลราชธานี’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.administrative_unit()
        ...
        'ยะลา'
        'ราชบุรี'
        'กาญจนบุรี'
        'ปราจีนบุรี'
        'สระแก้ว'

  amphoe() → str

    Get a random Amphoe (district) name. Currently it’s total random and not necessarily matched with a province. :example: ‘บางสะพานน้อย’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.amphoe()
        ...
        'นาแก'
        'นาหว้า'
        'คอนสวรรค์'
        'แม่ลาว'
        'ศรีสงคราม'

  building_number() → str
    Example:

      ‘791’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.building_number()
        ...
        '60/48'
        '6/4'
        '5/9'
        '824/2'
        '94'

  city() → str
    Example:

      ‘Sashabury’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.city()
        ...
        'อ้อมน้อย'
        'เชียงราย'
        'ตรัง'
        'พระนครศรีอยุธยา'
        'รังสิต'

  city_name() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.city_name()
        ...
        'ยะลา'
        'อ้อมน้อย'
        'ปากเกร็ด'
        'เชียงราย'
        'แม่สอด'

  city_suffix() → str
    Example:

      ‘town’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.city_suffix()
        ...
        'นคร'
        'นคร'
        'นคร'
        'นคร'
        'นคร'

  country() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.country()
        ...
        'อินเดีย'
        'บราซิล'
        'สิงคโปร์'
        'เอลซัลวาดอร์'
        'บาฮามาส'

  country_code(representation: str = 'alpha-2') → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.country_code()
        ...
        'MV'
        'PS'
        'NL'
        'BB'
        'IL'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.country_code(representation='alpha-2')
        ...
        'MV'
        'PS'
        'NL'
        'BB'
        'IL'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.country_code(representation='alpha-3')
        ...
        'MDV'
        'PSE'
        'NLD'
        'BRB'
        'ISR'

  current_country() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.current_country()
        ...
        'Thailand'
        'Thailand'
        'Thailand'
        'Thailand'
        'Thailand'

  current_country_code() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.current_country_code()
        ...
        'TH'
        'TH'
        'TH'
        'TH'
        'TH'

  postcode() → str
    Example:

      86039-9874

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.postcode()
        ...
        '76040'
        '97640'
        '85930'
        '92420'
        '29480'

  province() → str
    Example:

      ‘อุบลราชธานี’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.province()
        ...
        'ยะลา'
        'ราชบุรี'
        'กาญจนบุรี'
        'ปราจีนบุรี'
        'สระแก้ว'

  street_address() → str
    Example:

      ‘791 Crist Parks’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.street_address()
        ...
        '04/87 ถ.ไม้แดง'
        '5/9 ถนนถนัดการยนต์'
        '94 ถนนบุญญาไลย์'
        '78/1 ถนนนาถะพินธุ'
        '77 หมู่ 8 ถนนสงประเสริฐ'

  street_name() → str
    Example:

      ‘Crist Parks’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.street_name()
        ...
        'ถ.ทองสุกเลิศ'
        'ถนนธาราธร'
        'ถนนพงศ์ฉบับนภา'
        'ซอยแถมธน'
        'ถนนถนัดการยนต์'

  street_prefix() → str
    Example:

      ‘ถนน’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.street_prefix()
        ...
        'ถ.'
        'ถ.'
        'ถนน'
        'ถนน'
        'ถนน'

  street_suffix() → str
    Example:

      ‘Avenue’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.street_suffix()
        ...
        'Street'
        'Street'
        'Street'
        'Street'
        'Street'

  tambon() → str

    Get a random Tambon (subdistrict) name. Currently it’s total random and not necessarily matched with an amphoe or province. :example: ‘ห้วยนาง’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.tambon()
        ...
        'บ้านทุ่งต่อใหญ่'
        'พะโต๊ะ'
        'บ่อท่าเรือ'
        'ปากคมใหญ่'
        'เทพศิรินทร์'

## `faker.providers.automotive`

class faker.providers.automotive.th_TH.Provider(generator: Any)

  Bases: `Provider`

  Implement automotive provider for `th_TH` locale.

  Sources:

  - https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Thailand

  license_plate() → str

    Generate a license plate.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.license_plate()
        ...
        'ปฃ 48'
        'บด 7'
        'ศฎ 824'
        '4 งส 89'
        '1 ดง 57'

  vin() → str

    Generate vin number.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.vin()
        ...
        'RT3GZYSK4Z9J97593'
        '7G0K75MX5LDXV8156'
        'G416S1YM2EF0V3513'
        '66LZY7KJ7DJV61858'
        'RLFJBCB3669039471'

## `faker.providers.bank`

class faker.providers.bank.th_TH.Provider(generator: Any)

  Bases: `Provider`

  Implement bank provider for `th_TH` locale.

  aba() → str

    Generate an ABA routing transit number.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.aba()
        ...
        '076048766'
        '057593829'
        '052194896'
        '034115783'
        '025659384'

  bank() → str

    Generate a bank name.

  bank_country() → str

    Generate the bank provider’s ISO 3166-1 alpha-2 country code.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.bank_country()
        ...
        'TH'
        'TH'
        'TH'
        'TH'
        'TH'

  bban() → str

    Generate a Basic Bank Account Number (BBAN).

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.bban()
        ...
        '6604876475'
        '9382421948'
        '9241157815'
        '6593877840'
        '8016097535'

  iban() → str

    Generate an International Bank Account Number (IBAN).

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.iban()
        ...
        'TH396604876475'
        'TH269382421948'
        'TH499241157815'
        'TH126593877840'
        'TH898016097535'

  swift(length: int | None = None, primary: bool = False, use_dataset: bool = False) → str

    Generate a SWIFT code.

    SWIFT codes, reading from left to right, are composed of a 4 alphabet character bank code, a 2 alphabet character country code, a 2 alphanumeric location code, and an optional 3 alphanumeric branch code. This means SWIFT codes can only have 8 or 11 characters, so the value of `length` can only be `None` or the integers `8` or `11`. If the value is `None`, then a value of `8` or `11` will randomly be assigned.

    Because all 8-digit SWIFT codes already refer to the primary branch or office, the `primary` argument only has an effect if the value of `length` is `11`. If `primary` is `True` and `length` is `11`, the 11-digit SWIFT codes generated will always end in `'XXX'` to denote that they belong to primary branches/offices.

    For extra authenticity, localized providers may opt to include SWIFT bank codes, location codes, and branch codes used in their respective locales. If `use_dataset` is `True`, this method will generate SWIFT codes based on those locale-specific codes if included. If those codes were not included, then it will behave as if `use_dataset` were `False`, and in that mode, all those codes will just be randomly generated as per the specification.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.swift()
        ...
        'YNBITH65ZT4'
        'SGQETHSIGQ8'
        'JDXCTHV4'
        'LNKTTHN9'
        'OQIBTH9AFZA'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.swift(length=8)
        ...
        'MYNBTHQ6'
        'PMZJTH4W'
        'SGQETHSI'
        'YDTZTHQ8'
        'WZTETHTG'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.swift(length=8, use_dataset=True)
        ...
        'MHCBTHBX'
        'BKKBTHBB'
        'HSBCTHBX'
        'OCBCTHBB'
        'SMBCTHBB'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.swift(length=11)
        ...
        'MYNBTHQ65ZT'
        'PLSGTH6ISIG'
        'TZIRTHJTGEV'
        'PRDLTH1UN94'
        'OQIBTH9AFZA'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.swift(length=11, primary=True)
        ...
        'MYNBTHQ6XXX'
        'PMZJTH4WXXX'
        'SGQETHSIXXX'
        'YDTZTHQ8XXX'
        'WZTETHTGXXX'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.swift(length=11, use_dataset=True)
        ...
        'MHCBTHBXBKO'
        'ICBKTH2XCHM'
        'OCBCTHBBCHM'
        'LAHRTH2XCHB'
        'HSBCTHB2IBF'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.swift(length=11, primary=True, use_dataset=True)
        ...
        'MHCBTHBXXXX'
        'BKKBTHBBXXX'
        'HSBCTHBXXXX'
        'OCBCTHBBXXX'
        'SMBCTHBBXXX'

  swift11(primary: bool = False, use_dataset: bool = False) → str

    Generate an 11-digit SWIFT code.

    This method uses `swift()` under the hood with the `length` argument set to `11`. If `primary` is set to `True`, the SWIFT code will always end with `'XXX'`. All 11-digit SWIFT codes use this convention to refer to the primary branch/office.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.swift11()
        ...
        'MYNBTHQ65ZT'
        'PLSGTH6ISIG'
        'TZIRTHJTGEV'
        'PRDLTH1UN94'
        'OQIBTH9AFZA'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.swift11(use_dataset=True)
        ...
        'MHCBTHBXBKO'
        'ICBKTH2XCHM'
        'OCBCTHBBCHM'
        'LAHRTH2XCHB'
        'HSBCTHB2IBF'

  swift8(use_dataset: bool = False) → str

    Generate an 8-digit SWIFT code.

    This method uses `swift()` under the hood with the `length` argument set to `8` and with the `primary` argument omitted. All 8-digit SWIFT codes already refer to the primary branch/office.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.swift8()
        ...
        'MYNBTHQ6'
        'PMZJTH4W'
        'SGQETHSI'
        'YDTZTHQ8'
        'WZTETHTG'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.swift8(use_dataset=True)
        ...
        'MHCBTHBX'
        'BKKBTHBB'
        'HSBCTHBX'
        'OCBCTHBB'
        'SMBCTHBB'

## `faker.providers.color`

class faker.providers.color.th_TH.Provider(generator: Any)

  Bases: `Provider`

  Implement color provider for `th_TH` locale.

  Sources: - https://th.wikipedia.org/wiki/รายชื่อสี

  color(hue: str | float | int | Sequence[int] | None = None, luminosity: str | None = None, color_format: str = 'hex') → str

    Generate a color in a human-friendly way.

    Under the hood, this method first creates a color represented in the HSV color model and then converts it to the desired `color_format`. The argument `hue` controls the H value according to the following rules:

    - If the value is a number from `0` to `360`, it will serve as the H value of the generated color.

    - If the value is a tuple/list of 2 numbers from 0 to 360, the color’s H value will be randomly selected from that range.

    - If the value is a valid string, the color’s H value will be randomly selected from the H range corresponding to the supplied string. Valid values are `'monochrome'`, `'red'`, `'orange'`, `'yellow'`, `'green'`, `'blue'`, `'purple'`, and `'pink'`.

    The argument `luminosity` influences both S and V values and is partially affected by `hue` as well. The finer details of this relationship are somewhat involved, so please refer to the source code instead if you wish to dig deeper. To keep the interface simple, this argument either can be omitted or can accept the following string values:`'bright'`, `'dark'`, `'light'`, or `'random'`.

    The argument `color_format` controls in which color model the color is represented. Valid values are `'hsv'`, `'hsl'`, `'rgb'`, or `'hex'` (default).

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color(hue='red')
        ...
        '#af2f33'
        '#e02141'
        '#ef6466'
        '#a80a14'
        '#ed9e95'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color(luminosity='light')
        ...
        '#79c3e0'
        '#89ffa1'
        '#96cbf7'
        '#aafaff'
        '#e3f495'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color(hue=(100, 200), color_format='rgb')
        ...
        'rgb(26, 155, 88)'
        'rgb(9, 193, 49)'
        'rgb(73, 229, 154)'
        'rgb(107, 249, 166)'
        'rgb(76, 204, 69)'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color(hue='orange', luminosity='bright')
        ...
        '#efc332'
        '#edae65'
        '#d1861d'
        '#ffcc42'
        '#e09533'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color(hue=135, luminosity='dark', color_format='hsv')
        ...
        'hsv(135, 96, 45)'
        'hsv(135, 98, 57)'
        'hsv(135, 94, 61)'
        'hsv(135, 99, 47)'
        'hsv(135, 94, 50)'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color(hue=(300, 20), luminosity='random', color_format='hsl')
        ...
        'hsl(217, 94, 27)'
        'hsl(40, 23, 54)'
        'hsl(268, 100, 74)'
        'hsl(175, 43, 31)'
        'hsl(131, 47, 11)'

  color_hsl(hue: str | float | int | Sequence[int] | None = None, luminosity: str | None = None) → Tuple[int, int, int]

    Generate a HSL color tuple.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_hsl()
        ...
        (197, 57, 32)
        (132, 90, 39)
        (207, 76, 65)
        (183, 88, 33)
        (258, 62, 73)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_hsl(hue='red', luminosity='dark')
        ...
        (358, 92, 27)
        (350, 96, 33)
        (359, 88, 36)
        (356, 98, 28)
        (6, 85, 34)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_hsl(hue=(100, 200), luminosity='random')
        ...
        (149, 94, 27)
        (105, 23, 54)
        (162, 100, 74)
        (138, 43, 31)
        (174, 19, 55)

  color_hsv(hue: str | float | int | Sequence[int] | None = None, luminosity: str | None = None) → Tuple[int, int, int]

    Generate a HSV color tuple.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_hsv()
        ...
        (197, 73, 51)
        (132, 95, 76)
        (207, 58, 92)
        (183, 94, 64)
        (258, 37, 90)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_hsv(hue='red', luminosity='dark')
        ...
        (358, 96, 53)
        (350, 98, 66)
        (359, 94, 68)
        (356, 99, 56)
        (6, 92, 63)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_hsv(hue=(100, 200), luminosity='random')
        ...
        (149, 97, 53)
        (105, 33, 65)
        (162, 51, 100)
        (138, 61, 45)
        (174, 27, 64)

  color_name() → str

    Generate a color name.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_name()
        ...
        'สีออร์คิด'
        'สีชมพู'
        'สีน้ำเงินเขียว'
        'สีเขียว'
        'สีเงิน'

  color_rgb(hue: str | float | int | Sequence[int] | None = None, luminosity: str | None = None) → Tuple[int, int, int]

    Generate a RGB color tuple of integers.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_rgb()
        ...
        (35, 103, 130)
        (9, 193, 46)
        (98, 173, 234)
        (9, 155, 163)
        (170, 144, 229)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_rgb(hue='red', luminosity='dark')
        ...
        (135, 5, 9)
        (168, 3, 30)
        (173, 10, 13)
        (142, 1, 10)
        (160, 27, 12)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_rgb(hue=(100, 200), luminosity='random')
        ...
        (4, 135, 67)
        (124, 165, 111)
        (124, 255, 215)
        (44, 114, 65)
        (119, 163, 158)

  color_rgb_float(hue: str | float | int | Sequence[int] | None = None, luminosity: str | None = None) → Tuple[float, float, float]

    Generate a RGB color tuple of floats.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_rgb_float()
        ...
        (0.13770000000000002, 0.4045149999999999, 0.51)
        (0.038000000000000034, 0.76, 0.18239999999999984)
        (0.3864000000000001, 0.6798800000000002, 0.92)
        (0.03840000000000004, 0.6099200000000001, 0.64)
        (0.6668999999999999, 0.5670000000000001, 0.9)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_rgb_float(hue='red', luminosity='dark')
        ...
        (0.53, 0.02120000000000002, 0.03815999999999998)
        (0.66, 0.013200000000000012, 0.12100000000000023)
        (0.68, 0.04080000000000004, 0.05145333333333333)
        (0.56, 0.005600000000000005, 0.042559999999999855)
        (0.63, 0.10835999999999996, 0.05039999999999997)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.color_rgb_float(hue=(100, 200), luminosity='random')
        ...
        (0.015900000000000015, 0.53, 0.2643816666666667)
        (0.489125, 0.65, 0.43549999999999994)
        (0.49, 1.0, 0.8470000000000001)
        (0.17550000000000002, 0.45, 0.2578500000000001)
        (0.4672, 0.64, 0.62272)

  hex_color() → str

    Generate a color formatted as a hex triplet.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.hex_color()
        ...
        '#d82c08'
        '#629f70'
        '#c2094d'
        '#e3e707'
        '#6baa95'

  rgb_color() → str

    Generate a color formatted as a comma-separated RGB value.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.rgb_color()
        ...
        '197,215,20'
        '132,248,207'
        '155,244,183'
        '111,71,144'
        '71,48,128'

  rgb_css_color() → str

    Generate a color formatted as a CSS rgb() function.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.rgb_css_color()
        ...
        'rgb(197,215,20)'
        'rgb(132,248,207)'
        'rgb(155,244,183)'
        'rgb(111,71,144)'
        'rgb(71,48,128)'

  safe_color_name() → str

    Generate a web-safe color name.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.safe_color_name()
        ...
        'สีม่วง'
        'สีม่วง'
        'สีดำ'
        'สีส้ม'
        'สีแดง'

  safe_hex_color() → str

    Generate a web-safe color formatted as a hex triplet.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.safe_hex_color()
        ...
        '#ccdd11'
        '#88ffcc'
        '#99ffbb'
        '#664499'
        '#443388'

## `faker.providers.company`

class faker.providers.company.th_TH.Provider(generator: Any)

  Bases: `Provider`

  bs() → str
    Example:

      ‘integrate extensible convergence’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.bs()
        ...
        'iterate integrated e-markets'
        'integrate back-end mindshare'
        'synthesize wireless content'
        'syndicate synergistic applications'
        'productize killer mindshare'

  catch_phrase() → str
    Example:

      ‘Robust full-range hub’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.catch_phrase()
        ...
        'Networked well-modulated instruction set'
        'Balanced empowering migration'
        'Pre-emptive impactful toolset'
        'Innovative mission-critical help-desk'
        'Reduced didactic middleware'

  company() → str
    Example:

      ‘Acme Ltd’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.company()
        ...
        'ชมรมทองสุกเลิศ'
        'ธนาคารธรรมนิยม จำกัด'
        'ถนัดรักษาแลบ'
        'บริษัท ตัณฑนุชอิมปอร์ตเอ็กซปอร์ต จำกัด'
        'บริษัท พานเกล้า จำกัด'

  company_limited_prefix() → str
    Example:

      ‘บริษัท’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.company_limited_prefix()
        ...
        'บริษัท '
        'บริษัท '
        'บริษัท '
        'บริษัท '
        'บริษัท '

  company_limited_suffix() → str
    Example:

      ‘จำกัด’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.company_limited_suffix()
        ...
        'จำกัด'
        'จำกัด'
        'จำกัด'
        'จำกัด'
        'จำกัด'

  company_prefix() → str
    Example:

      ‘ห้างหุ้นส่วนจำกัด’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.company_prefix()
        ...
        'บมจ.'
        'บมจ.'
        'หจก.'
        'ห้างหุ้นส่วนจำกัด '
        'หจก.'

  company_suffix() → str
    Example:

      ‘Ltd’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.company_suffix()
        ...
        'จิวเวลรี่'
        'ภาพยนตร์'
        'แอนด์ซันส์'
        'วิศวการ'
        'อิมปอร์ตเอ็กซปอร์ต'

  nonprofit_prefix() → str
    Example:

      ‘มูลนิธิ’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.nonprofit_prefix()
        ...
        'ชมรม'
        'ชมรม'
        'มูลนิธิ'
        'สมาคม'
        'มูลนิธิ'

## `faker.providers.currency`

class faker.providers.currency.th_TH.Provider(generator: Any)

  Bases: `Provider`

  cryptocurrency() → Tuple[str, str]
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.cryptocurrency()
        ...
        ('XRP', 'Ripple')
        ('STC', 'SwiftCoin')
        ('BC', 'BlackCoin')
        ('NXT', 'Nxt')
        ('IOTA', 'IOTA')

  cryptocurrency_code() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.cryptocurrency_code()
        ...
        'XRP'
        'STC'
        'BC'
        'NXT'
        'IOTA'

  cryptocurrency_name() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.cryptocurrency_name()
        ...
        'Ripple'
        'SwiftCoin'
        'BlackCoin'
        'Nxt'
        'IOTA'

  currency() → Tuple[str, str]
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.currency()
        ...
        ('MXN', 'เปโซ เม็กซิโก')
        ('OMR', 'เรียล โอมาน')
        ('BAM', 'มาร์ค บอสเนียและเฮอร์เซโกวีนา')
        ('ISK', 'โครนา ไอซ์แลนด์')
        ('SSP', 'ปอนด์ เซาท์ซูดาน')

  currency_code() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.currency_code()
        ...
        'MXN'
        'OMR'
        'BAM'
        'ISK'
        'SSP'

  currency_name() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.currency_name()
        ...
        'เปโซ เม็กซิโก'
        'เรียล โอมาน'
        'มาร์ค บอสเนียและเฮอร์เซโกวีนา'
        'โครนา ไอซ์แลนด์'
        'ปอนด์ เซาท์ซูดาน'

  currency_symbol(code: str | None = None) → str
    Example:

      $

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.currency_symbol()
        ...
        '$'
        '$'
        'KM'
        'kr'
        'L'

  pricetag() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.pricetag()
        ...
        'MXN\xa05,048.76'
        'SCR\xa0593.82'
        'CUP\xa09.48'
        'WST\xa064.11'
        'SAR\xa091,565.93'

## `faker.providers.date_time`

class faker.providers.date_time.th_TH.Provider(generator: Any)

  Bases: `Provider`

  am_pm() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.am_pm()
        ...
        'AM'
        'AM'
        'PM'
        'AM'
        'AM'

  century(thai_digit: bool = False, buddhist_era: bool = True) → str
    Parameters:

      - (default (buddhist:_era use Buddist era or not) – False)

      - (default – True)

    Example:

      ‘20’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.century()
        ...
        '13'
        '25'
        '14'
        '2'
        '9'

  date(pattern: str = '%-d %b %Y', end_datetime: date | datetime | timedelta | str | int | None = None, thai_digit: bool = False, buddhist_era: bool = True) → str

    Get a date string between January 1, 1970 and now :param pattern: format :param end_datetime: datetime :param thai_digit: use Thai digit or not (default: False) :param buddhist_era: use Buddist era or not (default: True) :example: ‘08 พ.ย. 2563’ :example: ‘๐๘ พ.ย. 2563’ (thai_digit = True) :example: ‘8 พฤศิจกายน 2020’ (pattern: str = “%-d %B %Y”, buddhist_era = False)

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date()
        ...
        '10 เม.ย. 2560'
        '7 มิ.ย. 2555'
        '18 ก.ค. 2536'
        '30 มิ.ย. 2527'
        '16 ส.ค. 2541'

  date_between(start_date: date | datetime | timedelta | str | int = '-30y', end_date: date | datetime | timedelta | str | int = 'today') → date

    Get a Date object based on a random date between two given dates. Accepts date strings that can be recognized by strtotime().

    Parameters:

      - start_date – A `DateParseType`. Defaults to 30 years ago

      - end_date – A `DateParseType`. Defaults to `"today"`

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_between()
        ...
        datetime.date(2021, 4, 25)
        datetime.date(2018, 9, 20)
        datetime.date(2008, 8, 6)
        datetime.date(2003, 10, 1)
        datetime.date(2011, 4, 27)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_between(start_date='-1w')
        ...
        datetime.date(2025, 12, 23)
        datetime.date(2025, 12, 23)
        datetime.date(2025, 12, 20)
        datetime.date(2025, 12, 19)
        datetime.date(2025, 12, 21)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_between(start_date="-1y", end_date="+1w")
        ...
        datetime.date(2025, 11, 3)
        datetime.date(2025, 10, 2)
        datetime.date(2025, 5, 29)
        datetime.date(2025, 3, 30)
        datetime.date(2025, 7, 2)

  date_between_dates(date_start: date | datetime | timedelta | str | int | None = None, date_end: date | datetime | timedelta | str | int | None = None) → date

    Get a random date between the two given dates.

    Parameters:

      - date_start – A `DateParseType`. Defaults to the UNIX epoch

      - date_end – A `DateParseType`. Defaults to the current date and time

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_between_dates()
        ...
        datetime.date(2025, 12, 25)
        datetime.date(2025, 12, 25)
        datetime.date(2025, 12, 25)
        datetime.date(2025, 12, 25)
        datetime.date(2025, 12, 25)

  date_object(end_datetime: datetime | None = None) → date

    Get a date object between January 1, 1970 and now

    Parameters:

      end_datetime – A `DateParseType`. Defaults to the current date and time

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_object()
        ...
        datetime.date(2017, 4, 10)
        datetime.date(2012, 6, 7)
        datetime.date(1993, 7, 18)
        datetime.date(1984, 6, 30)
        datetime.date(1998, 8, 16)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_object(end_datetime='+1w')
        ...
        datetime.date(2017, 4, 15)
        datetime.date(2012, 6, 12)
        datetime.date(1993, 7, 21)
        datetime.date(1984, 7, 1)
        datetime.date(1998, 8, 19)

  date_of_birth(tzinfo: tzinfo | None = None, minimum_age: int = 0, maximum_age: int = 115) → date

    Generate a random date of birth represented as a Date object, constrained by optional miminimum_age and maximum_age parameters.

    Parameters:

      - tzinfo – Defaults to None.

      - minimum_age – Defaults to `0`.

      - maximum_age – Defaults to `115`.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_of_birth()
        ...
        datetime.date(2007, 12, 8)
        datetime.date(1997, 11, 26)
        datetime.date(1958, 10, 8)
        datetime.date(1940, 1, 7)
        datetime.date(1969, 4, 16)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_of_birth(minimum_age=30, maximum_age=50)
        ...
        datetime.date(1992, 9, 17)
        datetime.date(1990, 11, 24)
        datetime.date(1983, 10, 24)
        datetime.date(1980, 6, 1)
        datetime.date(1985, 9, 19)

  date_this_century(before_today: bool = True, after_today: bool = False) → date

    Gets a Date object for the current century.

    Parameters:

      - before_today – include days in current century before today. Defaults to True

      - after_today – include days in current century after today. Defaults to False

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_this_century()
        ...
        datetime.date(2021, 12, 9)
        datetime.date(2019, 9, 10)
        datetime.date(2010, 12, 5)
        datetime.date(2006, 9, 23)
        datetime.date(2013, 4, 13)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_this_century(before_today=False, after_today=True)
        ...
        datetime.date(2088, 6, 25)
        datetime.date(2082, 1, 31)
        datetime.date(2057, 2, 10)
        datetime.date(2045, 2, 22)
        datetime.date(2063, 10, 29)

  date_this_decade(before_today: bool = True, after_today: bool = False) → date

    Gets a Date object for the decade year.

    Parameters:

      - before_today – include days in current decade before today. Defaults to True

      - after_today – include days in current decade after today. Defaults to False

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_this_decade()
        ...
        datetime.date(2025, 1, 19)
        datetime.date(2024, 7, 14)
        datetime.date(2022, 7, 7)
        datetime.date(2021, 7, 19)
        datetime.date(2023, 1, 22)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_this_decade(before_today=False, after_today=True)
        ...
        datetime.date(2029, 5, 17)
        datetime.date(2029, 1, 10)
        datetime.date(2027, 9, 3)
        datetime.date(2027, 1, 9)
        datetime.date(2028, 1, 14)

  date_this_month(before_today: bool = True, after_today: bool = False) → date

    Gets a Date object for the current month.

    Parameters:

      - before_today – include days in current month before today. Defaults to True

      - after_today – include days in current month after today. Defaults to False

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_this_month()
        ...
        datetime.date(2025, 12, 21)
        datetime.date(2025, 12, 19)
        datetime.date(2025, 12, 11)
        datetime.date(2025, 12, 7)
        datetime.date(2025, 12, 13)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_this_month(before_today=False, after_today=True)
        ...
        datetime.date(2025, 12, 30)
        datetime.date(2025, 12, 30)
        datetime.date(2025, 12, 27)
        datetime.date(2025, 12, 26)
        datetime.date(2025, 12, 28)

  date_this_year(before_today: bool = True, after_today: bool = False) → date

    Gets a Date object for the current year.

    Parameters:

      - before_today – include days in current year before today. Defaults to True

      - after_today – include days in current year after today. Defaults to False

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_this_year()
        ...
        datetime.date(2025, 10, 30)
        datetime.date(2025, 9, 29)
        datetime.date(2025, 5, 31)
        datetime.date(2025, 4, 3)
        datetime.date(2025, 7, 3)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_this_year(before_today=False, after_today=True)
        ...
        datetime.date(2025, 12, 30)
        datetime.date(2025, 12, 30)
        datetime.date(2025, 12, 27)
        datetime.date(2025, 12, 26)
        datetime.date(2025, 12, 28)

  date_time(tzinfo: tzinfo | None = None, end_datetime: date | datetime | timedelta | str | int | None = None) → datetime

    Get a datetime object for a date between January 1, 1970 and a specified end_datetime

    Parameters:

      - tzinfo – timezone, instance of datetime.tzinfo subclass

      - end_datetime – A `DateParseType`. Defaults to the current date and time

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time()
        ...
        datetime.datetime(2017, 4, 10, 2, 4, 15, 499886)
        datetime.datetime(2012, 6, 7, 1, 35, 57, 514928)
        datetime.datetime(1993, 7, 18, 12, 33, 14, 573940)
        datetime.datetime(1984, 6, 30, 3, 7, 1, 338604)
        datetime.datetime(1998, 8, 16, 3, 37, 17, 576395)

  date_time_ad(tzinfo: tzinfo | None = None, end_datetime: date | datetime | timedelta | str | int | None = None, start_datetime: date | datetime | timedelta | str | int | None = None) → datetime

    Get a datetime object for a date between January 1, 0001 and now

    Parameters:

      - tzinfo – timezone, instance of datetime.tzinfo subclass

      - end_datetime – A `DateParseType`. Defaults to the current date and time

      - start_datetime – A `DateParseType`. Defaults to UNIX timestamp `-62135596800`,

    equivalent to 0001-01-01 00:00:00 UTC

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_ad()
        ...
        datetime.datetime(1710, 12, 10, 4, 39, 10, 969742)
        datetime.datetime(1535, 11, 6, 1, 42, 11, 398300)
        datetime.datetime(852, 8, 25, 14, 56, 6, 617935)
        datetime.datetime(525, 4, 21, 5, 13, 42, 308456)
        datetime.datetime(1036, 4, 28, 12, 2, 58, 568600)

  date_time_between(start_date: date | datetime | timedelta | str | int = '-30y', end_date: date | datetime | timedelta | str | int = 'now', tzinfo: tzinfo | None = None) → datetime

    Get a datetime object based on a random date between two given dates. Accepts date strings that can be recognized by strtotime().

    Parameters:

      - start_date – A `DateParseType`. Defaults to 30 years ago

      - end_date – A `DateParseType`. Defaults to `"now"`

      - tzinfo – timezone, instance of datetime.tzinfo subclass

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_between()
        ...
        datetime.datetime(2021, 4, 25, 12, 39, 19, 236214)
        datetime.datetime(2018, 9, 21, 2, 4, 5, 808743)
        datetime.datetime(2008, 8, 7, 7, 33, 46, 361449)
        datetime.datetime(2003, 10, 2, 0, 44, 22, 49189)
        datetime.datetime(2011, 4, 28, 4, 1, 18, 171082)

  date_time_between_dates(datetime_start: date | datetime | timedelta | str | int | None = None, datetime_end: date | datetime | timedelta | str | int | None = None, tzinfo: tzinfo | None = None) → datetime

    Get a random datetime between the two given datetimes.

    Parameters:

      - datetime_start – A `DateParseType`. Defaults to the UNIX epoch

      - datetime_end – A `DateParseType`. Defaults to the current date and time

      - tzinfo – timezone, instance of datetime.tzinfo subclass

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_between_dates()
        ...
        datetime.datetime(2025, 12, 25, 5, 28, 36)
        datetime.datetime(2025, 12, 25, 5, 28, 36)
        datetime.datetime(2025, 12, 25, 5, 28, 36)
        datetime.datetime(2025, 12, 25, 5, 28, 36)
        datetime.datetime(2025, 12, 25, 5, 28, 36)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_between_dates(datetime_start='-30y', datetime_end='now')
        ...
        datetime.datetime(2021, 4, 25, 12, 39, 19, 236214)
        datetime.datetime(2018, 9, 21, 2, 4, 5, 808743)
        datetime.datetime(2008, 8, 7, 7, 33, 46, 361449)
        datetime.datetime(2003, 10, 2, 0, 44, 22, 49189)
        datetime.datetime(2011, 4, 28, 4, 1, 18, 171082)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_between_dates(datetime_start='now', datetime_end='+1y')
        ...
        datetime.datetime(2026, 10, 29, 15, 28, 33, 441207)
        datetime.datetime(2026, 9, 28, 1, 31, 22, 993625)
        datetime.datetime(2026, 5, 27, 20, 6, 22, 345382)
        datetime.datetime(2026, 3, 29, 19, 4, 43, 534973)
        datetime.datetime(2026, 6, 29, 23, 11, 17, 405703)

  date_time_this_century(before_now: bool = True, after_now: bool = False, tzinfo: tzinfo | None = None) → datetime

    Gets a datetime object for the current century.

    Parameters:

      - before_now – include days in current century before today. Defaults to True

      - after_now – include days in current century after today. Defaults to False

      - tzinfo – timezone, instance of datetime.tzinfo subclass

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_this_century()
        ...
        datetime.datetime(2021, 12, 9, 18, 8, 43, 873267)
        datetime.datetime(2019, 9, 11, 3, 50, 45, 158268)
        datetime.datetime(2010, 12, 5, 7, 41, 11, 689407)
        datetime.datetime(2006, 9, 23, 4, 17, 49, 370860)
        datetime.datetime(2013, 4, 14, 2, 43, 50, 232498)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_this_century(before_now=False, after_now=True)
        ...
        datetime.datetime(2088, 6, 25, 23, 31, 34, 295419)
        datetime.datetime(2082, 1, 31, 8, 27, 37, 464621)
        datetime.datetime(2057, 2, 10, 6, 50, 16, 233340)
        datetime.datetime(2045, 2, 22, 23, 36, 10, 533662)
        datetime.datetime(2063, 10, 29, 10, 10, 0, 473702)

  date_time_this_decade(before_now: bool = True, after_now: bool = False, tzinfo: tzinfo | None = None) → datetime

    Gets a datetime object for the decade year.

    Parameters:

      - before_now – include days in current decade before today. Defaults to True

      - after_now – include days in current decade after today. Defaults to False

      - tzinfo – timezone, instance of datetime.tzinfo subclass

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_this_decade()
        ...
        datetime.datetime(2025, 1, 19, 6, 6, 23, 439529)
        datetime.datetime(2024, 7, 14, 7, 16, 47, 833690)
        datetime.datetime(2022, 7, 8, 1, 4, 37, 304858)
        datetime.datetime(2021, 7, 19, 19, 0, 44, 589956)
        datetime.datetime(2023, 1, 22, 6, 2, 47, 291258)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_this_decade(before_now=False, after_now=True)
        ...
        datetime.datetime(2029, 5, 17, 15, 31, 21, 801325)
        datetime.datetime(2029, 1, 10, 17, 34, 30, 458806)
        datetime.datetime(2027, 9, 3, 12, 45, 4, 579709)
        datetime.datetime(2027, 1, 9, 6, 12, 49, 4109)
        datetime.datetime(2028, 1, 14, 15, 54, 27, 247325)

  date_time_this_month(before_now: bool = True, after_now: bool = False, tzinfo: tzinfo | None = None) → datetime

    Gets a datetime object for the current month.

    Parameters:

      - before_now – include days in current month before today. Defaults to True

      - after_now – include days in current month after today. Defaults to False

      - tzinfo – timezone, instance of datetime.tzinfo subclass

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_this_month()
        ...
        datetime.datetime(2025, 12, 21, 11, 0, 41, 772547)
        datetime.datetime(2025, 12, 19, 8, 43, 58, 78945)
        datetime.datetime(2025, 12, 11, 4, 33, 9, 219299)
        datetime.datetime(2025, 12, 7, 6, 33, 14, 576056)
        datetime.datetime(2025, 12, 13, 9, 17, 39, 554636)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_this_month(before_now=False, after_now=True)
        ...
        datetime.datetime(2025, 12, 30, 22, 42, 53, 714578)
        datetime.datetime(2025, 12, 30, 8, 39, 42, 993890)
        datetime.datetime(2025, 12, 28, 1, 49, 45, 702799)
        datetime.datetime(2025, 12, 26, 23, 33, 24, 47928)
        datetime.datetime(2025, 12, 28, 16, 34, 14, 659077)

  date_time_this_year(before_now: bool = True, after_now: bool = False, tzinfo: tzinfo | None = None) → datetime

    Gets a datetime object for the current year.

    Parameters:

      - before_now – include days in current year before today. Defaults to True

      - after_now – include days in current year after today. Defaults to False

      - tzinfo – timezone, instance of datetime.tzinfo subclass

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_this_year()
        ...
        datetime.datetime(2025, 10, 30, 11, 53, 49, 795116)
        datetime.datetime(2025, 9, 29, 12, 29, 43, 57235)
        datetime.datetime(2025, 5, 31, 15, 51, 15, 670283)
        datetime.datetime(2025, 4, 3, 18, 1, 50, 589310)
        datetime.datetime(2025, 7, 3, 3, 40, 20, 954003)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.date_time_this_year(before_now=False, after_now=True)
        ...
        datetime.datetime(2025, 12, 30, 22, 42, 53, 714578)
        datetime.datetime(2025, 12, 30, 8, 39, 42, 993890)
        datetime.datetime(2025, 12, 28, 1, 49, 45, 702799)
        datetime.datetime(2025, 12, 26, 23, 33, 24, 47928)
        datetime.datetime(2025, 12, 28, 16, 34, 14, 659077)

  day_of_month() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.day_of_month()
        ...
        '10'
        '07'
        '18'
        '30'
        '16'

  day_of_week() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.day_of_week()
        ...
        'วันจันทร์'
        'วันพฤหัสบดี'
        'วันอาทิตย์'
        'วันเสาร์'
        'วันอาทิตย์'

  future_date(end_date: date | datetime | timedelta | str | int = '+30d') → date

    Get a Date object based on a random date between 1 day from now and a given date.

    Parameters:

      - end_date – A `DateParseType`. Defaults to `"+30d"`

      - tzinfo – timezone, instance of datetime.tzinfo subclass

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.future_date()
        ...
        datetime.date(2026, 1, 19)
        datetime.date(2026, 1, 16)
        datetime.date(2026, 1, 7)
        datetime.date(2026, 1, 2)
        datetime.date(2026, 1, 9)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.future_date(end_date='+1y')
        ...
        datetime.date(2026, 10, 29)
        datetime.date(2026, 9, 27)
        datetime.date(2026, 5, 28)
        datetime.date(2026, 3, 30)
        datetime.date(2026, 6, 30)

  future_datetime(end_date: date | datetime | timedelta | str | int = '+30d', tzinfo: tzinfo | None = None) → datetime

    Get a datetime object based on a random date between 1 second form now and a given date.

    Parameters:

      - end_date – A `DateParseType`. Defaults to `"+30d"`

      - tzinfo – timezone, instance of datetime.tzinfo subclass

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.future_datetime()
        ...
        datetime.datetime(2026, 1, 19, 13, 27, 37, 594731)
        datetime.datetime(2026, 1, 16, 23, 12, 14, 54467)
        datetime.datetime(2026, 1, 6, 20, 17, 18, 116942)
        datetime.datetime(2026, 1, 1, 23, 53, 48, 957843)
        datetime.datetime(2026, 1, 9, 13, 35, 40, 566513)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.future_datetime(end_date='+1y')
        ...
        datetime.datetime(2026, 10, 29, 15, 28, 33, 596785)
        datetime.datetime(2026, 9, 28, 1, 31, 23, 235670)
        datetime.datetime(2026, 5, 27, 20, 6, 22, 924810)
        datetime.datetime(2026, 3, 29, 19, 4, 44, 276056)
        datetime.datetime(2026, 6, 29, 23, 11, 17, 894428)

  iso8601(tzinfo: tzinfo | None = None, end_datetime: date | datetime | timedelta | str | int | None = None, sep: str = 'T', timespec: str = 'auto') → str

    Get an ISO 8601 string for a datetime between the UNIX epoch and now.

    Parameters:

      - tzinfo – timezone, instance of datetime.tzinfo subclass

      - end_datetime – A `DateParseType`. Defaults to the current date and time

      - sep – separator between date and time, defaults to ‘T’

      - timespec – format specifier for the time part, defaults to ‘auto’ - see datetime.isoformat() documentation

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.iso8601()
        ...
        '2017-04-10T02:04:15.499886'
        '2012-06-07T01:35:57.514928'
        '1993-07-18T12:33:14.573940'
        '1984-06-30T03:07:01.338604'
        '1998-08-16T03:37:17.576395'

  month() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.month()
        ...
        '04'
        '06'
        '07'
        '06'
        '08'

  month_name() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.month_name()
        ...
        'เมษายน'
        'มิถุนายน'
        'กรกฎาคม'
        'มิถุนายน'
        'สิงหาคม'

  past_date(start_date: date | datetime | timedelta | str | int = '-30d', tzinfo: tzinfo | None = None) → date

    Get a Date object based on a random date between a given date and 1 day ago.

    Parameters:

      - start_date – A `DateParseType`. Defaults to `"-30d"`

      - tzinfo – timezone, instance of datetime.tzinfo subclass

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.past_date()
        ...
        datetime.date(2025, 12, 19)
        datetime.date(2025, 12, 16)
        datetime.date(2025, 12, 7)
        datetime.date(2025, 12, 2)
        datetime.date(2025, 12, 9)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.past_date(start_date='-1y')
        ...
        datetime.date(2025, 10, 28)
        datetime.date(2025, 9, 26)
        datetime.date(2025, 5, 26)
        datetime.date(2025, 3, 28)
        datetime.date(2025, 6, 28)

  past_datetime(start_date: date | datetime | timedelta | str | int = '-30d', tzinfo: tzinfo | None = None) → datetime

    Get a datetime object based on a random date between a given date and 1 second ago.

    Parameters:

      - start_date – A `DateParseType`. Defaults to `"-30d"`

      - tzinfo – timezone, instance of datetime.tzinfo subclass

    Example:

      datetime(‘1999-02-02 11:42:52’)

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.past_datetime()
        ...
        datetime.datetime(2025, 12, 20, 13, 27, 36, 594731)
        datetime.datetime(2025, 12, 17, 23, 12, 13, 54467)
        datetime.datetime(2025, 12, 7, 20, 17, 17, 116942)
        datetime.datetime(2025, 12, 2, 23, 53, 47, 957843)
        datetime.datetime(2025, 12, 10, 13, 35, 39, 566513)

  pytimezone(*args: Any, **kwargs: Any) → tzinfo | None

    Generate a random timezone (see `faker.timezone` for any args) and return a Python object usable as a `tzinfo` for `datetime` or other fakers.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.pytimezone()
        ...
        zoneinfo.ZoneInfo(key='Indian/Maldives')
        zoneinfo.ZoneInfo(key='America/Barbados')
        zoneinfo.ZoneInfo(key='Europe/Stockholm')
        zoneinfo.ZoneInfo(key='Africa/Windhoek')
        zoneinfo.ZoneInfo(key='Asia/Qatar')

  time(pattern: str = '%H:%M:%S', end_datetime: date | datetime | timedelta | str | int | None = None, thai_digit: bool = False) → str

    Get a time string (24h format by default) :param pattern: format :param end_datetime: datetime :param thai_digit: use Thai digit or not (default: False) :example: ‘15:02:34’ :example: ‘๑๕:๐๒:๓๔’ (thai_digit = True)

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.time()
        ...
        '02:04:15'
        '01:35:57'
        '12:33:14'
        '03:07:01'
        '03:37:17'

  time_delta(end_datetime: date | datetime | timedelta | str | int | None = None) → timedelta

    Get a random timedelta object of duration between the current date and time and end_datetime

    Parameters:

      end_datetime – A `DateParseType`. Defaults to the current date and time

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.time_delta()
        ...
        datetime.timedelta(0)
        datetime.timedelta(0)
        datetime.timedelta(0)
        datetime.timedelta(0)
        datetime.timedelta(0)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.time_delta(end_datetime='+30h')
        ...
        datetime.timedelta(days=1, seconds=4797, microseconds=559965)
        datetime.timedelta(seconds=81859, microseconds=75518)
        datetime.timedelta(seconds=45421, microseconds=730730)
        datetime.timedelta(seconds=27963, microseconds=9032)
        datetime.timedelta(seconds=55217, microseconds=669908)

  time_object(end_datetime: date | datetime | timedelta | str | int | None = None) → time

    Get a time object

    Parameters:

      end_datetime – A `DateParseType`. Defaults to the current date and time

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.time_object()
        ...
        datetime.time(2, 4, 15, 499886)
        datetime.time(1, 35, 57, 514928)
        datetime.time(12, 33, 14, 573940)
        datetime.time(3, 7, 1, 338604)
        datetime.time(3, 37, 17, 576395)

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.time_object(end_datetime='+1h')
        ...
        datetime.time(2, 54, 55, 418552)
        datetime.time(2, 21, 26, 150779)
        datetime.time(12, 58, 28, 631631)
        datetime.time(3, 22, 33, 438905)
        datetime.time(4, 7, 58, 165392)

  time_series(start_date: date | datetime | timedelta | str | int = '-30d', end_date: date | datetime | timedelta | str | int = 'now', precision: float | None = None, distrib: Callable[[datetime], float] | None = None, tzinfo: tzinfo | None = None) → Iterator[Tuple[datetime, Any]]

    Returns a generator yielding tuples of `(<datetime>, <value>)`.

    The data points will start at `start_date`, and be at every time interval specified by `precision`.

    Parameters:

      - start_date – A `DateParseType`. Defaults to `"-30d"`

      - end_date – A `DateParseType`. Defaults to `"now"`

      - precision – A float representing the time interval between data points.

    Defaults to 1/30th of the time :param distrib: A callable that accepts a datetime object and returns a value. Defaults to a uniform distribution :param tzinfo: timezone, instance of datetime.tzinfo subclass

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.time_series()
        ...
        <generator object Provider.time_series at 0x7d6600a9db40>
        <generator object Provider.time_series at 0x7d6600a9db40>
        <generator object Provider.time_series at 0x7d6600a9db40>
        <generator object Provider.time_series at 0x7d6600a9db40>
        <generator object Provider.time_series at 0x7d6600a9db40>

  timezone() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.timezone()
        ...
        'Indian/Maldives'
        'America/Barbados'
        'Europe/Stockholm'
        'Africa/Windhoek'
        'Asia/Qatar'

  unix_time(end_datetime: date | datetime | timedelta | str | int | None = None, start_datetime: date | datetime | timedelta | str | int | None = None) → float

    Get a timestamp between January 1, 1970 and now, unless passed explicit `start_datetime` or end_datetime values.

    On Windows, the decimal part is always 0.

    Parameters:

      - end_datetime – A `DateParseType`. Defaults to the UNIX epoch

      - start_datetime – A `DateParseType`. Defaults to the current date and time

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.unix_time()
        ...
        1491789855.4998863
        1339032957.5149279
        742998794.5739397
        457412821.3386039
        903238637.5763948

  year() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.year()
        ...
        '2560'
        '2555'
        '2536'
        '2527'
        '2541'

## `faker.providers.internet`

class faker.providers.internet.th_TH.Provider(generator: Any)

  Bases: `Provider`

  ascii_company_email() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.ascii_company_email()
        ...
        'abunyasaphth@thnaakhaarthrrmniym.com'
        'amaiph75@haanghunswnsaamay.co.th'
        'naamkhamemthnii@brisath.co.th'
        'sriiwngkhwsitaa@hcchkchaachumutsaahkrrm.or.th'
        'amphrnrthukkh@haanghunswnsaamay.in.th'

  ascii_email() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.ascii_email()
        ...
        'qkhamluue@protonmail.com'
        'amaiph75@yahoo.com'
        'thensth19@sriiunbrrcchuphanth.org'
        'thitiwuthi15@haanghunswncchamkad.co.th'
        'hthiikha@brisath.com'

  ascii_free_email() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.ascii_free_email()
        ...
        'abunyasaphth@hotmail.com'
        'amphr87@icloud.com'
        'amaiph75@yahoo.com'
        'masuuekiiyndaawraam@gmail.com'
        'suphatr89@outlook.com'

  ascii_safe_email() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.ascii_safe_email()
        ...
        'abunyasaphth@example.org'
        'amphr87@example.com'
        'amaiph75@example.net'
        'kulpriiyaadaawraam@example.com'
        'phiirphathraichyphaa@example.net'

  company_email() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.company_email()
        ...
        'abunyasaphth@thnaakhaarthrrmniym.com'
        'amaiph75@haanghunswnsaamay.co.th'
        'naamkhamemthnii@brisath.co.th'
        'sriiwngkhwsitaa@hcchkchaachumutsaahkrrm.or.th'
        'amphrnrthukkh@haanghunswnsaamay.in.th'

  dga(year: int | None = None, month: int | None = None, day: int | None = None, tld: str | None = None, length: int | None = None) → str

    Generates a domain name by given date https://en.wikipedia.org/wiki/Domain_generation_algorithm

    Return type:

      str

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.dga()
        ...
        'hxqvaffcmfsccynscisxeajjagjahtnfcm.co.th'
        'cnrhkwsauxvmqcengcluh.com'
        'iiulfpgbvqcdaeh.com'
        'dgunygtn.in.th'
        'uqniukqjckmjabijnuqholpsjayatffafysbsyaaytuquhbpmpviajxnaro.com'

  domain_name(levels: int = 1) → str

    Produce an Internet domain name with the specified number of subdomain levels.

        >>> domain_name()
        nichols-phillips.com
        >>> domain_name(2)
        williamson-hopkins.jackson.com

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.domain_name()
        ...
        'chmrmthngsukelis.in.th'
        'thrrmniymaelathngpaaknam.org'
        'shphaaphaerngngaanaethmthn.net'
        'thayaaophchn-daawraam.co.th'
        'naamkhamwiswkaar.org'

  domain_word() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.domain_word()
        ...
        'chmrmthngsukelis'
        'thnaakhaarthrrmniym'
        'thnadraksaaaelb'
        'brisath'
        'brisath'

  email(safe: bool = True, domain: str | None = None) → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.email()
        ...
        'abunyasaphth@example.org'
        'amphr87@example.com'
        'amaiph75@example.net'
        'kulpriiyaadaawraam@example.com'
        'phiirphathraichyphaa@example.net'

  free_email() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.free_email()
        ...
        'abunyasaphth@hotmail.com'
        'amphr87@icloud.com'
        'amaiph75@yahoo.com'
        'masuuekiiyndaawraam@gmail.com'
        'suphatr89@outlook.com'

  free_email_domain() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.free_email_domain()
        ...
        'icloud.com'
        'icloud.com'
        'hotmail.com'
        'ymail.com'
        'protonmail.com'

  hostname(levels: int = 1) → str

    Produce a hostname with specified number of subdomain levels.

        >>> hostname()
        db-01.nichols-phillips.com
        >>> hostname(0)
        laptop-56
        >>> hostname(2)
        web-12.williamson-hopkins.jackson.com

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.hostname()
        ...
        'web-66.thnaakhaarthrrmniym.com'
        'desktop-75.haanghunswnsaamay.co.th'
        'web-19.sriiunbrrcchuphanth.org'
        'web-92.brisath.in.th'
        'laptop-59.haanghunswncchamkad.or.th'

  http_method() → str

    Returns random HTTP method https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods

    Return type:

      str

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.http_method()
        ...
        'OPTIONS'
        'OPTIONS'
        'GET'
        'DELETE'
        'PATCH'

  http_status_code(include_unassigned: bool = True) → int

    Returns random HTTP status code https://www.rfc-editor.org/rfc/rfc9110#name-status-codes :param include_unassigned: Whether to include status codes which have

    > not yet been assigned or are unused

    Returns:

      a random three digit status code

    Return type:

      int

    Example:

      404

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.http_status_code()
        ...
        532
        297
        488
        555
        315

  iana_id() → str

    Returns IANA Registrar ID https://www.iana.org/assignments/registrar-ids/registrar-ids.xhtml

    Return type:

      str

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.iana_id()
        ...
        '6463344'
        '7056021'
        '679216'
        '4343903'
        '8577767'

  image_url(width: int | None = None, height: int | None = None, placeholder_url: str | None = None) → str

    Returns URL to placeholder image Example: http://placehold.it/640x480

    Parameters:

      - width – Optional image width

      - height – Optional image height

      - placeholder_url – Optional template string of image URLs from custom placeholder service. String must contain `{width}` and `{height}` placeholders, eg: `https:/example.com/{width}/{height}`.

    Return type:

      str

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.image_url()
        ...
        'https://picsum.photos/788/861'
        'https://dummyimage.com/530x995'
        'https://dummyimage.com/621x976'
        'https://dummyimage.com/447x285'
        'https://placekitten.com/286/194'

  ipv4(network: bool = False, address_class: str | None = None, private: str | None = None) → str

    Returns a random IPv4 address or network with a valid CIDR.

    Parameters:

      - network – Network address

      - address_class – IPv4 address class (a, b, or c)

      - private – Public or private

    Returns:

      IPv4

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.ipv4()
        ...
        '171.174.170.81'
        '95.25.112.121'
        '51.105.121.194'
        '195.110.164.126'
        '141.250.247.54'

  ipv4_network_class() → str

    Returns a IPv4 network class ‘a’, ‘b’ or ‘c’.

    Returns:

      IPv4 network class

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.ipv4_network_class()
        ...
        'b'
        'b'
        'a'
        'b'
        'c'

  ipv4_private(network: bool = False, address_class: str | None = None) → str

    Returns a private IPv4.

    Parameters:

      - network – Network address

      - address_class – IPv4 address class (a, b, or c)

    Returns:

      Private IPv4

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.ipv4_private()
        ...
        '172.29.117.82'
        '10.248.203.131'
        '172.25.180.188'
        '172.22.253.123'
        '192.168.71.140'

  ipv4_public(network: bool = False, address_class: str | None = None) → str

    Returns a public IPv4 excluding private blocks.

    Parameters:

      - network – Network address

      - address_class – IPv4 address class (a, b, or c)

    Returns:

      Public IPv4

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.ipv4_public()
        ...
        '166.186.169.69'
        '111.198.92.30'
        '168.155.75.206'
        '141.250.247.54'
        '212.120.204.37'

  ipv6(network: bool = False) → str

    Produce a random IPv6 address or network with a valid CIDR

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.ipv6()
        ...
        'e3e7:682:c209:4cac:629f:6fbf:d82c:7cd'
        'f728:b4fa:4248:5e3a:a5d:2f35:6baa:9455'
        'eb11:67b3:67a9:c378:7c65:c1e6:82e2:e662'
        'f7c1:bd87:4da5:e709:d471:3d61:c8a7:639'
        'e443:df78:9558:867f:5ba9:1fb0:7a02:4204'

  mac_address(multicast: bool = False) → str

    Returns a random MAC address.

    Parameters:

      multicast – Multicast address

    Returns:

      MAC Address

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.mac_address()
        ...
        '66:c5:d7:14:84:f8'
        '48:9b:f4:b7:6f:47'
        '18:47:30:80:4b:9e'
        '6e:25:a9:f1:33:b5'
        '0e:a1:68:f4:e2:85'

  nic_handle(suffix: str = 'FAKE') → str

    Returns NIC Handle ID https://www.apnic.net/manage-ip/using-whois/guide/person/

    Return type:

      str

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.nic_handle()
        ...
        'ZYT1598-FAKE'
        'SIW493-FAKE'
        'UE59352-FAKE'
        'WBUN892-FAKE'
        'CHQD98-FAKE'

  nic_handles(count: int = 1, suffix: str = '????') → List[str]

    Returns NIC Handle ID list

    Return type:

      list[str]

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.nic_handles()
        ...
        ['ZYT1598-EWLN']
        ['WGNZ53-QITZ']
        ['UERV52-EJGW']
        ['CHQ498-DZJA']
        ['UU1864-TEMK']

  port_number(is_system: bool = False, is_user: bool = False, is_dynamic: bool = False) → int

    Returns a network port number https://tools.ietf.org/html/rfc6335

    Parameters:

      - is_system – System or well-known ports

      - is_user – User or registered ports

      - is_dynamic – Dynamic / private / ephemeral ports

    Return type:

      int

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.port_number()
        ...
        50494
        55125
        5306
        33936
        63691

  ripe_id() → str

    Returns RIPE Organization ID https://www.ripe.net/manage-ips-and-asns/db/support/organisation-object-in-the-ripe-database

    Return type:

      str

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.ripe_id()
        ...
        'ORG-ZYT1598-RIPE'
        'ORG-SIW493-RIPE'
        'ORG-UE59352-RIPE'
        'ORG-WBUN892-RIPE'
        'ORG-CHQD98-RIPE'

  safe_domain_name() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.safe_domain_name()
        ...
        'example.com'
        'example.com'
        'example.org'
        'example.com'
        'example.net'

  safe_email() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.safe_email()
        ...
        'abunyasaphth@example.org'
        'amphr87@example.com'
        'amaiph75@example.net'
        'kulpriiyaadaawraam@example.com'
        'phiirphathraichyphaa@example.net'

  slug(value: str | None = None) → str

    Django algorithm

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.slug()
        ...
        'threeimagesonvoice'
        'amounteventmuch'
        'interviewwhystep'
        'floormehelppastwait'
        'discovermotherchair'

  tld() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.tld()
        ...
        'com'
        'com'
        'or.th'
        'co.th'
        'ac.th'

  uri(schemes: List[str] | None = None, deep: int | None = None) → str
    Parameters:

      - schemes – a list of strings to use as schemes, one will chosen randomly. If None, it will generate http and https uris. Passing an empty list will result in schemeless uri generation like “://domain.com/index.html”.

      - deep – an integer specifying how many path components the URI should have..

    Returns:

      a random url string.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.uri()
        ...
        'https://bmcchthnadraksaa.org/categorylogin.jsp'
        'https://www.nkthngaelaaennducchpm.com/main/main/mainprivacy.htm'
        'http://haanghunswncchamkad.co.th/explorehome.php'
        'http://echaawandii-bindii.com/list/searchprivacy.asp'
        'http://brisath.or.th/wp-content/searchauthor.html'

  uri_extension() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.uri_extension()
        ...
        '.php'
        '.php'
        '.html'
        '.htm'
        '.asp'

  uri_page() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.uri_page()
        ...
        'author'
        'category'
        'privacy'
        'category'
        'index'

  uri_path(deep: int | None = None) → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.uri_path()
        ...
        'posts/tag'
        'explore/tag'
        'explore/category'
        'blog'
        'category'

  url(schemes: List[str] | None = None) → str
    Parameters:

      schemes – a list of strings to use as schemes, one will chosen randomly. If None, it will generate http and https urls. Passing an empty list will result in schemeless url generation like “://domain.com”.

    Returns:

      a random url string.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.url()
        ...
        'https://thnaakhaarthrrmniym.com/'
        'https://brisath.in.th/'
        'http://nkthngaelaaennducchpm.com/'
        'http://brisath.or.th/'
        'http://hcchksaastrsilp.co.th/'

  user_name() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.user_name()
        ...
        'abunyasaphth'
        'thnmkulbutramphr'
        'ythngpaaknam'
        'amaiph75'
        'kulpriiyaadaawraam'

## `faker.providers.job`

class faker.providers.job.th_TH.Provider(generator: Any)

  Bases: `Provider`

  job() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.job()
        ...
        'นักวิจัย'
        'นักสังคมวิทยา'
        'โฆษก'
        'นักบวช'
        'นายแบบ'

  job_female() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.job_female()
        ...
        'นักวิจัย'
        'นักสังคมวิทยา'
        'โฆษก'
        'นักบวช'
        'นายแบบ'

  job_male() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.job_male()
        ...
        'นักวิจัย'
        'นักสังคมวิทยา'
        'โฆษก'
        'นักบวช'
        'นายแบบ'

## `faker.providers.lorem`

class faker.providers.lorem.th_TH.Provider(generator: Any)

  Bases: `Provider`

  Implement lorem provider for `th_TH` locale.

  Word list is randomly drawn from the Thailand’s Ministry of Education, removing compound words and long words, adding common words (like prepositions) and few of regional words.

  Sources:

  - http://www.arts.chula.ac.th/~ling/TTC/id-4.html

  - https://www.sanook.com/campus/1390689/

  - https://www.sanook.com/campus/1397677/

  - https://www.sanook.com/campus/1392241/

  get_words_list(part_of_speech: str | None = None, ext_word_list: Sequence[str] | None = None) → List[str]

    Get list of words.

    `ext_word_list` is a parameter that allows the user to provide a list of words to be used instead of the built-in word list. If `ext_word_list` is provided, then the value of `part_of_speech` is ignored.

    `part_of_speech` is a parameter that defines to what part of speech the returned word belongs. If `ext_word_list` is not `None`, then `part_of_speech` is ignored. If the value of `part_of_speech` does not correspond to an existent part of speech according to the set locale, then an exception is raised.

    Warning

    Depending on the length of a locale provider’s built-in word list or on the length of `ext_word_list` if provided, a large `nb` can exhaust said lists if `unique` is `True`, raising an exception.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.get_words_list(part_of_speech="abc", ext_word_list=['abc', 'def', 'ghi', 'jkl'])
        ...
        ['abc', 'def', 'ghi', 'jkl']
        ['abc', 'def', 'ghi', 'jkl']
        ['abc', 'def', 'ghi', 'jkl']
        ['abc', 'def', 'ghi', 'jkl']
        ['abc', 'def', 'ghi', 'jkl']

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.get_words_list(ext_word_list=['abc', 'def', 'ghi', 'jkl'])
        ...
        ['abc', 'def', 'ghi', 'jkl']
        ['abc', 'def', 'ghi', 'jkl']
        ['abc', 'def', 'ghi', 'jkl']
        ['abc', 'def', 'ghi', 'jkl']
        ['abc', 'def', 'ghi', 'jkl']

  paragraph(nb_sentences: int = 3, variable_nb_sentences: bool = True, ext_word_list: Sequence[str] | None = None) → str

    Generate a paragraph.

    The `nb_sentences` argument controls how many sentences the paragraph will contain, and setting `variable_nb_sentences` to `False` will generate the exact amount, while setting it to `True` (default) will generate a random amount (+/-40%, minimum of 1) using `randomize_nb_elements()`.

    Under the hood, `sentences()` is used to generate the sentences, so the argument `ext_word_list` works in the same way here as it would in that method.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.paragraph(nb_sentences=5)
        ...
        'ก้างอัศจรรย์บริโภคห้างสารวัตรอายุ พ่อหว่านบูชาซอยเลือกมะเขือเทศ อุปโภคปูรากเพลงคนไข้ แรงงานหล่นร่มรื่นนิ่ม ตำลึงโดยแม่โควิด '
        'เทเลแกรมประสบการณ์กิโลเมตรห้างหอยขนมสี กตัญญูบอกใบ้หนูชะนีตรวจหมดเคยเผื่อ สนองแข้งแปรงโกงแอนดรอยด์ ไอโอเอสบริษัทดาวเทียมดอกไม้ขี้ดินตอใดหาบ อ่อนหวานเพียงพับเทเลแกรมเพดาน โดยชนิดคำถามสหภาพกะเพราอินสตาแกรม '
        'กูเกิลรถทัวร์เขยื้อนคนตายกับแกรังแก ร่มรื่นสีเทาปากประสบการณ์ฉีดโง่รถทัวร์ พนมมือธนาคารยูทูบไอศกรีมหอยเศษ ต้นข้าวหมูแดงพักผ่อนต่อ '
        'กลเชื่อรากเตียนคอมมิวนิสต์ สลับขัดคนไข้รังแกการโผล่ เพลงเกาหลีขี้ดินคู่สำนักงานขี่โกง กะละมังกล้าออนซอนเด๊คำถาม '
        'ง่วงสถานีเห็นกลางทั่วขัดชุมนุม เกมดาวเทียมที่กิโลเมตรน้ำเย็น ขัดเอสซีบีเคารพตีนโรงสีสีเทาห้างคอก '

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.paragraph(nb_sentences=5, variable_nb_sentences=False)
        ...
        'แลกทอดชุมนุมใบไม้ทดศาสตร์ อายุตีนหยักจะไปพั่งแข็ง เลือกมะเขือเทศชาวนาหว่าน หลบดูแรงงานหล่นร่มรื่นนิ่มขัดที่ดิน แม่โควิดผสมเทเลแกรมประสบการณ์กิโลเมตรห้างหอย '
        'เริ่มถึงสัญญาเยอะ เฟซบุ๊กสารวัตรตอใด รัฐประหารกีฬาหอยจัดสนองแข้ง แท็บลอยด์แกตกลงเบียร์เหตุขาดเคิ่งผลิต ผลสม่ำเสมอเป้าอ่อนหวาน '
        'ผลด้วยโกงสดโดยชนิดคำถามสหภาพ มลายูยีราฟเนื่องจาก รถทัวร์เขยื้อนคนตายกับ หล่นหาม้ายเป้าถกเถียง ซ่อนสมาคมเสรีนิยมหลงพับอดพนมมือ '
        'บอกใบ้แม่รัฐบาลอินสตาแกรมติดต้นข้าวหมูแดง เมาะสุดท้ายชะนีโรงสีข้าวหมูแดงจัดเศษตอใด ขัดคนไข้รังแกการ แมคเห็นเพลงเกาหลีขี้ดินคู่สำนักงาน ถกเถียงเตียนอินสตาแกรมกะละมัง '
        'เครื่องบินอาสาเริ่ม ง่วงสถานีเห็นกลางทั่วขัดชุมนุม เกมดาวเทียมที่กิโลเมตรน้ำเย็น ขัดเอสซีบีเคารพตีนโรงสีสีเทาห้างคอก อัศจรรย์กินรถถังสุดท้ายตะปู '

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.paragraph(nb_sentences=5, ext_word_list=['abc', 'def', 'ghi', 'jkl'])
        ...
        'Abcjkldefjkljkljkl Ghijklghidefjklghi Jklghighighiabc Ghijklghidef Defdefghiabc '
        'Defghiabcjkljklabcjkl Abcdefjklabcdefjklabcghi Jklabcghiabcjkl Jkldefdefdefabcdefjkl Jklghighidefghi Defabcabcjklabcjkl '
        'Abcghiabcabcabcabcghi Ghijklghighiabcabcghi Ghidefghijkljkljkl Defabcghidef '
        'Abcdefghidefabc Jklabcabcghiabcghi Ghiabcabcabcjklabcabc Abcabcjklabc '
        'Abcjkljklabcdefabcdef Abcdefdefabcdef Abcjklabcdefghijkljklabc '

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.paragraph(nb_sentences=5, variable_nb_sentences=False, ext_word_list=['abc', 'def', 'ghi', 'jkl'])
        ...
        'Jkldefdefghidefjkl Jkldefjklabcabc Jklghidefjkl Jkldefghijklghidefabcdef Ghiabcghidefghiabcjkljkl '
        'Ghidefjklghi Ghijkldef Ghiabcjklabcjklabc Defabcdefghijklabcghi Ghijklghijkl '
        'Ghidefabcjkldefabcabcjkl Ghighidef Ghiabcabcabc Jkljklghidef Defjkljkljklghijklghi '
        'Defghighijkldefdefabc Ghijklabcghiabcabcjkldef Abcabcghiabc Ghijklghiabcabcabcjkl Defdefjklabc '
        'Abcjklghi Abcjkljklabcdefabcdef Abcdefdefabcdef Abcjklabcdefghijkljklabc Jklabcghijkldef '

  paragraphs(nb: int = 3, ext_word_list: Sequence[str] | None = None) → List[str]

    Generate a list of paragraphs.

    This method uses `paragraph()` under the hood to generate paragraphs, and the `nb` argument controls exactly how many sentences the list will contain. The `ext_word_list` argument works in exactly the same way as well.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.paragraphs(nb=5)
        ...
        ['ก้างอัศจรรย์บริโภคห้างสารวัตรอายุ พ่อหว่านบูชาซอยเลือกมะเขือเทศ อุปโภคปูรากเพลงคนไข้ ', 'หล่นร่มรื่นนิ่มขัด โดยแม่โควิดผสมเทเลแกรมประสบการณ์ ', 'หอยขนมสีร่างศิษย์เมตตาเฟซบุ๊ก ชะนีตรวจหมดเคยเผื่อเฉย ', 'แท็บลอยด์แกตกลงเบียร์เหตุขาดเคิ่งผลิต ผลสม่ำเสมอเป้าอ่อนหวาน ', 'พับเทเลแกรมเพดานโตฝากดอกไม้คู่ กะเพราอินสตาแกรมชูกูเกิล หมอกหาม้ายสีหล่น ร่มรื่นสีเทาปากประสบการณ์ฉีดโง่รถทัวร์ ']
        ['ซ่อนบอกใบ้แม่รัฐบาลอินสตาแกรมติดต้นข้าวหมูแดง เมาะสุดท้ายชะนีโรงสีข้าวหมูแดงจัดเศษตอใด ขัดคนไข้รังแกการ ', 'เพลงเกาหลีขี้ดินคู่สำนักงานขี่โกง กะละมังกล้าออนซอนเด๊คำถาม เนื้อแรกกิโลเมตรรถทัวร์ ', 'มัสยิดสีแดงเกมเกมดาวเทียมที่ บูชากับขัดเอสซีบี ชูหลังคานิ่มหลบเผื่อ ', 'เศรษฐกิจครูคลานปี เพดานทุ่มค่อยนิ่ม ', 'ห่มผ้าห้างยันไต้ยึดคมนาคมรอ ลืมคาวต่อการซอยชนิดอนุบาลตัวอย่าง รถโดยสารพิการหยักเสียบเขยื้อน ']
        ['ลูกสารวัตรแกพิพักพิพ่วนรังแกคลาน แม่มดแต่หมอกเผื่อทวิตเตอร์ ', 'ท้องฟ้ายูทูบการแท็กซี่ชุมนุมครูปี หว่านเพียงกตัญญูกับตรวจสีเทากำ คู่ไอโอเอสแมคแก่แรกอุปโภค ', 'โดยเงารู้จักกตัญญูสัญญาปี เคยฟากเคารพดาวเทียม ขัดเสียบถีบแก ', 'สดข้าวหมูแดงชุดนอนย้ำสลับแม้ข้าวหมูแดง ซ่อมเบิ่งกล่องก้างรถบัส ', 'องค์แหย่หว่านก้างลูกรัฐบาล ร่างหลังคาแม่เตียนเปลืองงมพักผ่อน แข็งเชื่อตะแกรง ']
        ['ตะแกรงมัสยิดก้างควร ด้วยถางผลัดดองเนื้อเฉยกำคั่ว แรงงานดำสีแดงด้ายขาดเคิ่งผิดโน่น ', 'ขี้ดินข้าวหมูแดงบันไดกับต่อรสชาติ ห้างเมตตาแตะอาหาร กูแก่ลูกกิโลเมตร ', 'ถางประพฤติแท็บลอยด์บริษัท ', 'ทอดมันเตาเอสซีบีชูวิชาชีพ เคยข้าวหมูแดงสหภาพเสียบกล่าวปิ่นโต ขี่ถึงไค้หันก้างอด มิตรขันน้ำนักเรียนตื่นสาธารณรัฐ ', 'อิสลามคนตายทดลองรถทัวร์หม้อบัดนี้หอยตกลง ไอโอเอสแม่มดห่มผ้าแปรงหุ้มกรรมการราก ']
        ['กะละมังคนตายชุดนอนศาสตร์สีพ่อ กูแก่หนูกับจ๋าก้างกล ตอกคลานคนตายยีราฟอายุบูชาหลบ ', 'โผล่รถทัวร์สบาย เอิดลูกตาห่วงใยไค้หันเป็นเพราะสาธารณรัฐโน่น แพ้ใจหน้าที่กล้าหมุนลืมคาว ', 'แผนที่ตอใดบอกใบ้ชูสาธารณรัฐวิกิพีเดียโต กิโลเมตรแม่ขุดแซงสารวัตรกิจกรรม ', 'ท้องฟ้าบอกหน้าที่รู้จักรถโดยสารคบอุปโภค ', 'เฟซบุ๊กไต้หวันการ วินโดวส์กล้าเพราะเข้ารหัสต้นรัฐบาลยัน โตวิชาชีพบอกหมัดเฟซบุ๊ก ']

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.paragraphs(nb=5, ext_word_list=['abc', 'def', 'ghi', 'jkl'])
        ...
        ['Abcjkldefjkljkljkl Ghijklghidefjklghi Jklghighighiabc ', 'Jklghidefabc Defghiabcghidefghi ', 'Jklabcjklghijklghighi Abcdefjklabcghiabc ', 'Defabcdefghijklabcghi Ghijklghijkl ', 'Ghidefghidefghidefabc Abcjkldefabc Jkljkljkljkl Ghijklghighiabcabcghi ']
        ['Defdefghighijkldefdefabc Ghijklabcghiabcabcjkldef Abcabcghiabc ', 'Ghiabcabcabcjklabcabc Abcabcjklabc Defghiabcghi ', 'Ghijklabcabcdefdef Ghiabcabcjkl Defjkldefjklghi ', 'Jklabcabcghi Ghidefabcdef ', 'Jkljklghidefghiabcghi Ghidefabcdefabcjkldef Ghighijkljklabc ']
        ['Ghijklabcghighiabc Ghidefjklghidef ', 'Defghiabcdefdefabcghi Jklghiabcabcdefjklabc Abcjklghiabcghijkl ', 'Defabcghiabcjklghi Abcghiabcdef Abcjkldefabc ', 'Jklabcdefghijklghiabc Defabcabcghi ', 'Jkljkljklabcghighi Ghijklghidefghiabcghi Abcdefdef ']
        ['Defghiabcabc Defdefghidefdefabcabcabc Ghidefjkldefabcghidef ', 'Abcabcdefabcdefghi Jklghidefjkl Abcabcghiabc ', 'Defghidefdef ', 'Defdefjkldefjkl Abcabcjkljklabcghi Abcdefabcabcjkl Ghiabcdefdefjkl ', 'Jklabcdefghijkldefjkldef Jklghijklghijklabcghi ']
        ['Abcabcdefjkljklghi Abcabcjklabcabcabcabc Defabcabcghijklghijkl ', 'Ghighijkl Jklghijklabcghighijkldef Ghiabcjklabcjklghi ', 'Ghidefdefdefjkljkldef Abcghiabcdefjklabc ', 'Defdefjklghighiabcjkl ', 'Ghidefabc Jklabcghiabcdefghighi Defjkldefjklghi ']

  sentence(nb_words: int = 6, variable_nb_words: bool = True, ext_word_list: Sequence[str] | None = None) → str

    Generate a sentence.

    The `nb_words` argument controls how many words the sentence will contain, and setting `variable_nb_words` to `False` will generate the exact amount, while setting it to `True` (default) will generate a random amount (+/-40%, minimum of 1) using `randomize_nb_elements()`.

    Under the hood, `words()` is used to generate the words, so the argument `ext_word_list` works in the same way here as it would in that method.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.sentence(nb_words=10)
        ...
        'แลกทอดชุมนุมใบไม้ทดศาสตร์ดำเนื่องจากพ่อหว่าน '
        'แข็งแข็งขนมสดอุปโภคปูรากเพลงคนไข้ของหวานเกาหลีเสรีภาพ '
        'นิ่มขัดที่ดินเฟซบุ๊กห้องเรียนอัศจรรย์เนื่องจากหนุนชูสบาย '
        'หอยขนมสีร่างศิษย์เมตตาเฟซบุ๊กสารวัตรตอใดโรงสีรัฐประหารกีฬาหอย '
        'เฉยอายุสนองแท็บลอยด์แกตกลงเบียร์เหตุ '

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.sentence(nb_words=10, variable_nb_words=False)
        ...
        'สุขภาพแลกทอดชุมนุมใบไม้ทดศาสตร์ดำเนื่องจากพ่อ '
        'หว่านบูชาซอยเลือกมะเขือเทศชาวนาหว่านอิสลามสมาคมหลบ '
        'ดูแรงงานหล่นร่มรื่นนิ่มขัดที่ดินเฟซบุ๊กห้องเรียนอัศจรรย์ '
        'เนื่องจากหนุนชูสบายผลัดกระถางเริ่มถึงสัญญาเยอะ '
        'กตัญญูบอกใบ้หนูชะนีตรวจหมดเคยเผื่อเฉยอายุ '

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.sentence(nb_words=10, ext_word_list=['abc', 'def', 'ghi', 'jkl'])
        ...
        'Jkldefdefghidefjkldefdefghijkl '
        'Abcabcabcjkljklghighighiabcabcabcjkl '
        'Defabcdefghijkljkldefjkldefjkl '
        'Jklabcjklghijklghighijkldefghighiabcjkl '
        'Abcjkljkldefabcdefghijkl '

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.sentence(nb_words=10, variable_nb_words=True, ext_word_list=['abc', 'def', 'ghi', 'jkl'])
        ...
        'Jkldefdefghidefjkldefdefghijkl '
        'Abcabcabcjkljklghighighiabcabcabcjkl '
        'Defabcdefghijkljkldefjkldefjkl '
        'Jklabcjklghijklghighijkldefghighiabcjkl '
        'Abcjkljkldefabcdefghijkl '

  sentences(nb: int = 3, ext_word_list: Sequence[str] | None = None) → List[str]

    Generate a list of sentences.

    This method uses `sentence()` under the hood to generate sentences, and the `nb` argument controls exactly how many sentences the list will contain. The `ext_word_list` argument works in exactly the same way as well.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.sentences()
        ...
        ['แลกทอดชุมนุมใบไม้ทดศาสตร์ ', 'อายุตีนหยักจะไปพั่งแข็ง ', 'เลือกมะเขือเทศชาวนาหว่าน ']
        ['หลบดูแรงงานหล่นร่มรื่นนิ่มขัดที่ดิน ', 'แม่โควิดผสมเทเลแกรมประสบการณ์กิโลเมตรห้างหอย ', 'เริ่มถึงสัญญาเยอะ ']
        ['เฟซบุ๊กสารวัตรตอใด ', 'รัฐประหารกีฬาหอยจัดสนองแข้ง ', 'แท็บลอยด์แกตกลงเบียร์เหตุขาดเคิ่งผลิต ']
        ['ผลสม่ำเสมอเป้าอ่อนหวาน ', 'ผลด้วยโกงสดโดยชนิดคำถามสหภาพ ', 'มลายูยีราฟเนื่องจาก ']
        ['รถทัวร์เขยื้อนคนตายกับ ', 'หล่นหาม้ายเป้าถกเถียง ', 'ซ่อนสมาคมเสรีนิยมหลงพับอดพนมมือ ']

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.sentences(nb=5)
        ...
        ['แลกทอดชุมนุมใบไม้ทดศาสตร์ ', 'อายุตีนหยักจะไปพั่งแข็ง ', 'เลือกมะเขือเทศชาวนาหว่าน ', 'หลบดูแรงงานหล่นร่มรื่นนิ่มขัดที่ดิน ', 'แม่โควิดผสมเทเลแกรมประสบการณ์กิโลเมตรห้างหอย ']
        ['เริ่มถึงสัญญาเยอะ ', 'เฟซบุ๊กสารวัตรตอใด ', 'รัฐประหารกีฬาหอยจัดสนองแข้ง ', 'แท็บลอยด์แกตกลงเบียร์เหตุขาดเคิ่งผลิต ', 'ผลสม่ำเสมอเป้าอ่อนหวาน ']
        ['ผลด้วยโกงสดโดยชนิดคำถามสหภาพ ', 'มลายูยีราฟเนื่องจาก ', 'รถทัวร์เขยื้อนคนตายกับ ', 'หล่นหาม้ายเป้าถกเถียง ', 'ซ่อนสมาคมเสรีนิยมหลงพับอดพนมมือ ']
        ['บอกใบ้แม่รัฐบาลอินสตาแกรมติดต้นข้าวหมูแดง ', 'เมาะสุดท้ายชะนีโรงสีข้าวหมูแดงจัดเศษตอใด ', 'ขัดคนไข้รังแกการ ', 'แมคเห็นเพลงเกาหลีขี้ดินคู่สำนักงาน ', 'ถกเถียงเตียนอินสตาแกรมกะละมัง ']
        ['เครื่องบินอาสาเริ่ม ', 'ง่วงสถานีเห็นกลางทั่วขัดชุมนุม ', 'เกมดาวเทียมที่กิโลเมตรน้ำเย็น ', 'ขัดเอสซีบีเคารพตีนโรงสีสีเทาห้างคอก ', 'อัศจรรย์กินรถถังสุดท้ายตะปู ']

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.sentences(nb=5, ext_word_list=['abc', 'def', 'ghi', 'jkl'])
        ...
        ['Jkldefdefghidefjkl ', 'Jkldefjklabcabc ', 'Jklghidefjkl ', 'Jkldefghijklghidefabcdef ', 'Ghiabcghidefghiabcjkljkl ']
        ['Ghidefjklghi ', 'Ghijkldef ', 'Ghiabcjklabcjklabc ', 'Defabcdefghijklabcghi ', 'Ghijklghijkl ']
        ['Ghidefabcjkldefabcabcjkl ', 'Ghighidef ', 'Ghiabcabcabc ', 'Jkljklghidef ', 'Defjkljkljklghijklghi ']
        ['Defghighijkldefdefabc ', 'Ghijklabcghiabcabcjkldef ', 'Abcabcghiabc ', 'Ghijklghiabcabcabcjkl ', 'Defdefjklabc ']
        ['Abcjklghi ', 'Abcjkljklabcdefabcdef ', 'Abcdefdefabcdef ', 'Abcjklabcdefghijkljklabc ', 'Jklabcghijkldef ']

  text(max_nb_chars: int = 200, ext_word_list: Sequence[str] | None = None) → str

    Generate a text string.

    The `max_nb_chars` argument controls the approximate number of characters the text string will have, and depending on its value, this method may use either `words()`, `sentences()`, or `paragraphs()` for text generation. The `ext_word_list` argument works in exactly the same way it would in any of those methods.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.text(max_nb_chars=20)
        ...
        'บอกใบ้อาสาเปลือง '
        'ตอกย้ำมัสยิดประพฤติ '
        'เฟซบุ๊กนักเรียน '
        'ซ่อมเบิ่งย่อคั่ว '
        'คั่วอัศจรรย์ขี้ไคล '

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.text(max_nb_chars=80)
        ...
        'แลกทอดชุมนุมใบไม้ทดศาสตร์ อายุตีนหยักจะไปพั่งแข็ง เลือกมะเขือเทศชาวนาหว่าน '
        'แม่โควิดผสมเทเลแกรมประสบการณ์กิโลเมตรห้างหอย เริ่มถึงสัญญาเยอะ '
        'รัฐประหารกีฬาหอยจัดสนองแข้ง แท็บลอยด์แกตกลงเบียร์เหตุขาดเคิ่งผลิต '
        'ผลด้วยโกงสดโดยชนิดคำถามสหภาพ มลายูยีราฟเนื่องจาก รถทัวร์เขยื้อนคนตายกับ '
        'ซ่อนสมาคมเสรีนิยมหลงพับอดพนมมือ บอกใบ้แม่รัฐบาลอินสตาแกรมติดต้นข้าวหมูแดง '

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.text(max_nb_chars=160)
        ...
        'ก้างอัศจรรย์บริโภคห้างสารวัตรอายุ พ่อหว่านบูชาซอยเลือกมะเขือเทศ อุปโภคปูรากเพลงคนไข้ \nหล่นร่มรื่นนิ่มขัด โดยแม่โควิดผสมเทเลแกรมประสบการณ์ '
        'แท็บลอยด์แกตกลงเบียร์เหตุขาดเคิ่งผลิต ผลสม่ำเสมอเป้าอ่อนหวาน '
        'ซ่อนบอกใบ้แม่รัฐบาลอินสตาแกรมติดต้นข้าวหมูแดง เมาะสุดท้ายชะนีโรงสีข้าวหมูแดงจัดเศษตอใด ขัดคนไข้รังแกการ '
        'มัสยิดสีแดงเกมเกมดาวเทียมที่ บูชากับขัดเอสซีบี ชูหลังคานิ่มหลบเผื่อ \nเศรษฐกิจครูคลานปี เพดานทุ่มค่อยนิ่ม '
        'ลูกสารวัตรแกพิพักพิพ่วนรังแกคลาน แม่มดแต่หมอกเผื่อทวิตเตอร์ \nท้องฟ้ายูทูบการแท็กซี่ชุมนุมครูปี หว่านเพียงกตัญญูกับตรวจสีเทากำ คู่ไอโอเอสแมคแก่แรกอุปโภค '

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.text(ext_word_list=['abc', 'def', 'ghi', 'jkl'])
        ...
        'Abcjkldefjkljkljkl Ghijklghidefjklghi Jklghighighiabc \nJklghidefabc Defghiabcghidefghi \nJklabcjklghijklghighi Abcdefjklabcghiabc \nDefabcdefghijklabcghi Ghijklghijkl '
        'Defdefghighijkldefdefabc Ghijklabcghiabcabcjkldef Abcabcghiabc \nGhiabcabcabcjklabcabc Abcabcjklabc Defghiabcghi \nGhijklabcabcdefdef Ghiabcabcjkl Defjkldefjklghi \nJklabcabcghi Ghidefabcdef '
        'Ghijklabcghighiabc Ghidefjklghidef \nDefghiabcdefdefabcghi Jklghiabcabcdefjklabc Abcjklghiabcghijkl \nDefabcghiabcjklghi Abcghiabcdef Abcjkldefabc \nJklabcdefghijklghiabc Defabcabcghi '
        'Defghiabcabc Defdefghidefdefabcabcabc Ghidefjkldefabcghidef \nAbcabcdefabcdefghi Jklghidefjkl Abcabcghiabc \nDefghidefdef \nDefdefjkldefjkl Abcabcjkljklabcghi Abcdefabcabcjkl Ghiabcdefdefjkl '
        'Abcabcdefjkljklghi Abcabcjklabcabcabcabc Defabcabcghijklghijkl \nGhighijkl Jklghijklabcghighijkldef Ghiabcjklabcjklghi \nGhidefdefdefjkljkldef Abcghiabcdefjklabc \nDefdefjklghighiabcjkl '

  texts(nb_texts: int = 3, max_nb_chars: int = 200, ext_word_list: Sequence[str] | None = None) → List[str]

    Generate a list of text strings.

    The `nb_texts` argument controls how many text strings the list will contain, and this method uses `text()` under the hood for text generation, so the two remaining arguments, `max_nb_chars` and `ext_word_list` will work in exactly the same way as well.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.texts(nb_texts=5)
        ...
        ['ก้างอัศจรรย์บริโภคห้างสารวัตรอายุ พ่อหว่านบูชาซอยเลือกมะเขือเทศ อุปโภคปูรากเพลงคนไข้ \nหล่นร่มรื่นนิ่มขัด โดยแม่โควิดผสมเทเลแกรมประสบการณ์ \nหอยขนมสีร่างศิษย์เมตตาเฟซบุ๊ก ชะนีตรวจหมดเคยเผื่อเฉย ', 'พับเทเลแกรมเพดานโตฝากดอกไม้คู่ กะเพราอินสตาแกรมชูกูเกิล หมอกหาม้ายสีหล่น ร่มรื่นสีเทาปากประสบการณ์ฉีดโง่รถทัวร์ ', 'เพลงเกาหลีขี้ดินคู่สำนักงานขี่โกง กะละมังกล้าออนซอนเด๊คำถาม เนื้อแรกกิโลเมตรรถทัวร์ \nมัสยิดสีแดงเกมเกมดาวเทียมที่ บูชากับขัดเอสซีบี ชูหลังคานิ่มหลบเผื่อ \nเศรษฐกิจครูคลานปี เพดานทุ่มค่อยนิ่ม ', 'ลูกสารวัตรแกพิพักพิพ่วนรังแกคลาน แม่มดแต่หมอกเผื่อทวิตเตอร์ \nท้องฟ้ายูทูบการแท็กซี่ชุมนุมครูปี หว่านเพียงกตัญญูกับตรวจสีเทากำ คู่ไอโอเอสแมคแก่แรกอุปโภค ', 'สดข้าวหมูแดงชุดนอนย้ำสลับแม้ข้าวหมูแดง ซ่อมเบิ่งกล่องก้างรถบัส \nองค์แหย่หว่านก้างลูกรัฐบาล ร่างหลังคาแม่เตียนเปลืองงมพักผ่อน แข็งเชื่อตะแกรง ']
        ['ขี้ดินข้าวหมูแดงบันไดกับต่อรสชาติ ห้างเมตตาแตะอาหาร กูแก่ลูกกิโลเมตร \nถางประพฤติแท็บลอยด์บริษัท ', 'อิสลามคนตายทดลองรถทัวร์หม้อบัดนี้หอยตกลง ไอโอเอสแม่มดห่มผ้าแปรงหุ้มกรรมการราก \nกะละมังคนตายชุดนอนศาสตร์สีพ่อ กูแก่หนูกับจ๋าก้างกล ตอกคลานคนตายยีราฟอายุบูชาหลบ ', 'แผนที่ตอใดบอกใบ้ชูสาธารณรัฐวิกิพีเดียโต กิโลเมตรแม่ขุดแซงสารวัตรกิจกรรม \nท้องฟ้าบอกหน้าที่รู้จักรถโดยสารคบอุปโภค \nเฟซบุ๊กไต้หวันการ วินโดวส์กล้าเพราะเข้ารหัสต้นรัฐบาลยัน โตวิชาชีพบอกหมัดเฟซบุ๊ก ', 'อบอุ่นหลบกับชุดนอน ไหนเย็บแผนที่ เจ็บไข้วิชาชีพหมีเมตตาบาด ทอดดีข้าวเจ้าทั่วผู้ร้ายหาม้ายเห็น \nของหวานวิ่งฤดูกว้าง ทำสวนทหารบัดนี้หน้าที่ต้นชิงตำลึง ตีนกล่าวตัวเมียกรรมการ ', 'คำสั่งข้าวตั้งแต่อวัยวะ กล่าวงมต่อออนซอนเด๊ \nแม่มดคำถามแอนดรอยด์ขันน้ำพยาธิครองหล่น สนองโดยชะนีเลี้ยว \nท้องฟ้าการเขยื้อนกล้าแกะเกาหลี ด้ายทหารหายพิการด้ายตำลึง ']
        ['แพ้คมนาคมรัฐประหารหึงสาคำสั่งทอดค่อย ตะปูปากติดเมาะแก้เลือกดอง \nนั่งจะไปพั่งข้าวเจ้าอินเทอร์เน็ตดาวเทียมฟากทอดมันเล่ม รถทัวร์และแจ่มใสและ เมาะกล้าเชื่อเยอะกตัญญู ', 'ง่วงข้างอบอุ่นแปรงลืมคาวหลังคาซ่อมเบิ่งทุ่ม เมล็ดครองระยำโตยพิการแข็งเยอะ เมาะลืมคาวจะไปพั่งบริษัทบาดบอกใบ้ \nดาวเทียมลูกตากำไรมัสยิดกลางคืนนิ่ม สุดท้ายอินเทอร์เน็ตรสชาติ ', 'ตอกยันรสชาติคนตาย ปากเขยิบห่อข้าวเทเลแกรม ทั่วบอกแรงงานสดชื่นทุกข์โควิด \nกะเพราแมคหมดตู้ลูกชิ้นรถถัง \nด้ายแก้หนูเล่มวิกิพีเดียหมีทวดกิ่งไม้ เย็บยันผลฤดูทำสวนธาตุชิง ', 'ชุดนอนประสบการณ์เคยแกหนูตับ ชาวนาแรงงานดาวเทียมประชาธิปไตยโต ตั้งแต่ร่างกามเหตุเกมนั่งเรื่อย \nอินเทอร์เน็ตนั่งขี่แกของหวานวัฒนธรรม \nทุ่มแก้วทั่วเลี้ยวสารวัตร อวัยวะชาวจัด เหตุได้แก่ที่ดินผ่อแซง ', 'ขี้ไคลย่อขี่ ตีนรถโดยสารรัฐประหารยูทูบจัดสำนักงานชนิด ดึกตรวจแต่งโน่นพยาธิแข่งขันกล \nตู่แมคสมาคมหมอกครองคะแนน แข่งขันไค้หันหอยบัดนี้ ฉีดเขยื้อนใจโตฟาก ']
        ['เพียงรัฐประหารสหภาพศิษย์ ไหนงมโดยลูกตาชาวหน้าที่ \nตั้งแต่คลานกลโผล่กิน คบกล้าเมล็ดกลางกามจ๋าย้ำกู \nอาสาทอดมันหยักโง่ที่ตีน ยันแรงงานศิษย์ทรัพย์สิน \nหยักปูสนองอินสตาแกรมรัฐประหารแลก ', 'ขันน้ำเมล็ดร่างมลายูก้างตะปูล่อแตะ หุ้มกะละมังโก๋แก่ดองคบฉีดติดลงมือ ตะแกรงสนองไหนกระถางปี่ด้วย \nวิ่งแผนที่ชู น้องเรียงทด กำไรไชโยไอศกรีมชิงรถบัสรัฐประหารหึงสา ', 'สุดท้ายสหภาพพ่อกำไรครองตั้งแต่ เมตตาต้นศาสตร์เพลงอุปโภค \nเผื่อทุ่มตะปูกรรมการ \nลูกตาคู่ผลัดทอดมันอด ปีกีฬาแมลงพนมมือ เมาะแปรงโตที่ดินดูกระถางวินโดวส์ \nเปลืองผสมเอิดคู่ศาสตร์ สุขภาพเล่มครองยูทูบ ', 'โผล่ฉีดริมหน้าที่ อวัยวะควรหาม้ายหึงสา ใหม่ชิงหมัดวิ่งฟากโกง \nกระจายชาวนาและไต้หวันวิชาชีพเมตตาไต้ \nน้ำเย็นสารวัตรขุดร่างตลอดกลางนุ่นประสบการณ์ \nผู้ร้ายตับกบเคย ', 'หรือห่อข้าวรากรู้จัก แรงงานประพฤติสัญญา \nอดตั้งแต่พักผ่อนแก่ผักสม่ำเสมอ สถานีตลอดร่างกายศาลากลางประชาธิปไตย ไอโอเอสครองหลบผสมกับพักผ่อนแม่ หลงโดยองค์ ']
        ['ทานตัวอย่างธนาคารสำหรับ ตื่นสีแม่มดแข่งขันหายคำถามขุด \nเครื่องบินทวิตเตอร์กิโลเมตรดูไต้กำไรวาดร่าง ห้างหายทรัพย์สินทุ่มเพียงมัสยิด เยาวชนผีกสนองทวดกว้าง ', 'แกกำไรหน้าต่างเศษอาหารหน้ากากชูยัน สีแดงแกตีนของหวาน คมนาคมประชาธิปไตยสนอง \nแตะครองผลัด \nค่อยหาบแม่ชะนี ตลอดกลางอวัยวะเมตตาถึงจ๋าแม่มดตลอด \nจ๋าหม้อน้าหมอกแข็งผีก คลานพ่อรสชาติ ', 'ที่ห้องเรียนตอใดชาวแข็งใบไม้ \nเกาหลีทรัพย์สินยึดอัศจรรย์ทำสวนที่ โตยหอยชนิดโน่นหาบกูเกิลชาวนา หมุนเตียนกล้าเฟซบุ๊กนุ่น \nก้างตกลงสดอ่อนหวานข้าง ไข่ถกเถียงวาด ', 'ทำสวนรถบัสเชื้อโรคแรงงานตับเขยื้อนมลายู กว้างฝากน้าแม่ \nแปรงผสมคอกไค้หันเจ็บไข้ปิ่นโต ติดหมัดลงมือรู้จักต่อขี่อ่อนหวาน ', 'ข้างวินโดวส์รังแกเพดานเพียงปกครองเชื่อม คอกแก้กะละมังข้าวหมูแดงตื่นเรียงได้แก่รถถัง พ่อชิงบริโภควิชาชีพหาม้ายผิด ศาลากลางเบียร์หมุนกลางคืน \nทรัพย์สินยูทูบทุกข์ร่มรื่นเช้าพักผ่อนห้าง หมุนผีกหอยหึงสา ']

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.texts(nb_texts=5, max_nb_chars=50)
        ...
        ['แลกทอดชุมนุมใบไม้ทดศาสตร์ ', 'เลือกมะเขือเทศชาวนาหว่าน ', 'แม่โควิดผสมเทเลแกรมประสบการณ์กิโลเมตรห้างหอย ', 'เฟซบุ๊กสารวัตรตอใด รัฐประหารกีฬาหอยจัดสนองแข้ง ', 'ผลสม่ำเสมอเป้าอ่อนหวาน ']
        ['มลายูยีราฟเนื่องจาก รถทัวร์เขยื้อนคนตายกับ ', 'ซ่อนสมาคมเสรีนิยมหลงพับอดพนมมือ ', 'เมาะสุดท้ายชะนีโรงสีข้าวหมูแดงจัดเศษตอใด ', 'แมคเห็นเพลงเกาหลีขี้ดินคู่สำนักงาน ', 'เครื่องบินอาสาเริ่ม ']
        ['เกมดาวเทียมที่กิโลเมตรน้ำเย็น ', 'อัศจรรย์กินรถถังสุดท้ายตะปู ', 'ห่มผ้าห้างยันไต้ยึดคมนาคมรอ ', 'รถโดยสารพิการหยักเสียบเขยื้อน ', 'คลานจากแท็บลอยด์ร่างรถโดยสารห่มผ้า ']
        ['ความกีฬารัฐบาล ปีบริโภคผิดเลือกหมีบอกใบ้ดู ', 'อุปโภคแถบรถทัวร์โดย ', 'ขี่ยันห่มผ้าซ่อมเบิ่งอินเทอร์เน็ต ', 'สดข้าวหมูแดงชุดนอนย้ำสลับแม้ข้าวหมูแดง ', 'เดี่ยวตู่ผู้ร้ายเสรีนิยมสุดท้ายออนซอนเด๊ฟาก ']
        ['แข็งเชื่อตะแกรง ', 'ตื่นเอสซีบีเขยิบข้าวเจ้าโรงสี ดึกแสงแรงงาน ', 'ต่อสดสมาคมขี้ดินข้าวหมูแดงบันไดกับ ', 'กูแก่ลูกกิโลเมตร ของหวานผ่อด้วย ', 'ทำสวนตีนกีฬาหน้าที่ หลังคาธนาคารรถถัง ']

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.texts(nb_texts=5, max_nb_chars=50, ext_word_list=['abc', 'def', 'ghi', 'jkl'])
        ...
        ['Jkldefdefghidefjkl Jkldefjklabcabc Jklghidefjkl ', 'Ghiabcghidefghiabcjkljkl Ghidefjklghi Ghijkldef ', 'Defabcdefghijklabcghi Ghijklghijkl ', 'Ghighidef Ghiabcabcabc Jkljklghidef ', 'Defghighijkldefdefabc Ghijklabcghiabcabcjkldef ']
        ['Ghijklghiabcabcabcjkl Defdefjklabc Abcjklghi ', 'Abcdefdefabcdef Abcjklabcdefghijkljklabc ', 'Abcjklghiabcghi Jkljklghidefghiabcghi ', 'Ghighijkljklabc Defdefghiabcabc ', 'Defghidef Abcabcghi Ghidefghijkljkldefdef ']
        ['Jkldefghidef Abcjkljklghighi Abcghijkldefjkl ', 'Jklabcdefghijklghiabc Defabcabcghi ', 'Ghijklghidefghiabcghi Abcdefdef ', 'Defjklabcabcghi Defjklghi Defdefdefabcjkl ', 'Ghijkljklghidefjkl Abcabcghiabc Abcghidef ']
        ['Defdefabcjkl Jkldefghi Defdefghijkl ', 'Jkljklabcdef Jkldefjkldefdefdef Ghijklabcghighi ', 'Defghidefjklghijklabcabc Abcjkldefabcabc ', 'Jklghijklabcghighijkldef Ghiabcjklabcjklghi ', 'Jkldefdefabcjkl Defjklabcabcdef ']
        ['Defabcdefabcabcghighi Ghighiabcjkl ', 'Defjkljkldefdefghijkljkl Ghijklabcjkl ', 'Defjkljkl Ghiabcabcjkljkljklghi ', 'Defabcjklghi Jkldefdef Jkljklghiabcabcdefabc ', 'Abcghijkl Ghidefghijkl Jklabcabcdefjkl ']

  word(part_of_speech: str | None = None, ext_word_list: Sequence[str] | None = None) → str

    Generate a word.

    This method uses `words()` under the hood with the `nb` argument set to `1` to generate the result.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.word()
        ...
        'บอกใบ้'
        'อาสา'
        'เปลือง'
        'กำไร'
        'ตอก'

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.word(ext_word_list=['abc', 'def', 'ghi', 'jkl'])
        ...
        'jkl'
        'jkl'
        'abc'
        'ghi'
        'jkl'

  words(nb: int = 3, ext_word_list: List[str] | None = None, part_of_speech: str | None = None, unique: bool = False) → List[str]

    Generate a tuple of words.

    The `nb` argument controls the number of words in the resulting list, and if `ext_word_list` is provided, words from that list will be used instead of those from the locale provider’s built-in word list.

    if `word_list` is not provided, the method will use a default value of None, which will result in the method calling the `get_words_list` method to get the word list. If `word_list` is provided, the method will use the provided list.

    If `unique` is `True`, this method will return a list containing unique words. Under the hood, `random_sample()` will be used for sampling without replacement. If `unique` is `False`, `random_choices()` is used instead, and the list returned may contain duplicates.

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.words()
        ...
        ['สุขภาพ', 'แลก', 'ทอด']
        ['ชุมนุม', 'ใบไม้', 'ทด']
        ['ศาสตร์', 'ดำ', 'เนื่องจาก']
        ['พ่อ', 'หว่าน', 'บูชา']
        ['ซอย', 'เลือก', 'มะเขือเทศ']

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.words(nb=5)
        ...
        ['สุขภาพ', 'แลก', 'ทอด', 'ชุมนุม', 'ใบไม้']
        ['ทด', 'ศาสตร์', 'ดำ', 'เนื่องจาก', 'พ่อ']
        ['หว่าน', 'บูชา', 'ซอย', 'เลือก', 'มะเขือเทศ']
        ['ชาวนา', 'หว่าน', 'อิสลาม', 'สมาคม', 'หลบ']
        ['ดู', 'แรงงาน', 'หล่น', 'ร่มรื่น', 'นิ่ม']

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.words(nb=5, ext_word_list=['abc', 'def', 'ghi', 'jkl'])
        ...
        ['jkl', 'jkl', 'def', 'def', 'ghi']
        ['def', 'jkl', 'def', 'def', 'ghi']
        ['jkl', 'ghi', 'def', 'jkl', 'ghi']
        ['def', 'jkl', 'jkl', 'jkl', 'jkl']
        ['def', 'ghi', 'jkl', 'ghi', 'def']

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.words(nb=4, ext_word_list=['abc', 'def', 'ghi', 'jkl'], unique=True)
        ...
        ['jkl', 'def', 'abc', 'ghi']
        ['jkl', 'def', 'ghi', 'abc']
        ['ghi', 'jkl', 'abc', 'def']
        ['ghi', 'abc', 'jkl', 'def']
        ['def', 'jkl', 'abc', 'ghi']

## `faker.providers.person`

class faker.providers.person.th_TH.Provider(generator: Any)

  Bases: `Provider`

  first_name() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.first_name()
        ...
        'วรรณนิสา'
        'สมนึก'
        'เพ็ญพรรษา'
        'สหัสมณี'
        'สุทธิพจน์'

  first_name_female() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.first_name_female()
        ...
        'สุพัตรา'
        'เบญญาทิพย์'
        'ศศิยา'
        'อณัฐตา'
        'ปาริตา'

  first_name_male() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.first_name_male()
        ...
        'สุพนธ์'
        'บุญญามี'
        'ศุภาศิล'
        'อชิตะวีร์'
        'ประเสริฐ'

  first_name_nonbinary() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.first_name_nonbinary()
        ...
        'วรรณนิสา'
        'สมนึก'
        'เพ็ญพรรษา'
        'สหัสมณี'
        'สุทธิพจน์'

  language_name() → str

    Generate a random i18n language name (e.g. English).

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.language_name()
        ...
        'Luba-Katanga'
        'Malay'
        'Aymara'
        'Interlingue'
        'Quechua'

  last_name() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.last_name()
        ...
        'เยาวธนโชค'
        'ทศโยธิน'
        'บุนยะศัพท์'
        'ศรีตะวัน'
        'ทองสุกเลิศ'

  last_name_female() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.last_name_female()
        ...
        'เยาวธนโชค'
        'ทศโยธิน'
        'บุนยะศัพท์'
        'ศรีตะวัน'
        'ทองสุกเลิศ'

  last_name_male() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.last_name_male()
        ...
        'เยาวธนโชค'
        'ทศโยธิน'
        'บุนยะศัพท์'
        'ศรีตะวัน'
        'ทองสุกเลิศ'

  last_name_nonbinary() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.last_name_nonbinary()
        ...
        'เยาวธนโชค'
        'ทศโยธิน'
        'บุนยะศัพท์'
        'ศรีตะวัน'
        'ทองสุกเลิศ'

  name() → str
    Example:

      ‘John Doe’

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.name()
        ...
        'เพ็ญพรรษา ศรีตะวัน'
        'คมกฤชญ์ ถนอมกุลบุตร'
        'สิทธิชัย สงประเสริฐ'
        'อำไพ ธนูปกรณ์'
        'ฐิติยาพร ศรีธนะเวทย์'

  name_female() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.name_female()
        ...
        'ศศิยา ศรีตะวัน'
        'ทานตะวัน อัตตนาถ'
        'ประภัทร์สรณ์ สงประเสริฐ'
        'นพรัตน์ อัตตนาถ'
        'ภาสินี ศรีธนะเวทย์'

  name_male() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.name_male()
        ...
        'ศุภาศิล ศรีตะวัน'
        'เทียมศักดิ์ อัตตนาถ'
        'ประเดิม สงประเสริฐ'
        'ธีร์ธวันาย อัตตนาถ'
        'ไมล์ ศรีธนะเวทย์'

  name_nonbinary() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.name_nonbinary()
        ...
        'เพ็ญพรรษา ศรีตะวัน'
        'ไพสิฐ อัตตนาถ'
        'สิทธิชัย สงประเสริฐ'
        'ยูซุฟ อัตตนาถ'
        'ฐิติยาพร ศรีธนะเวทย์'

  prefix() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.prefix()
        ...
        'ด.ช.'
        'นาย'
        'ด.ญ.'
        'น.ส.'
        'นาย'

  prefix_female() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.prefix_female()
        ...
        'ด.ญ.'
        'ด.ญ.'
        'น.ส.'
        'นาง'
        'น.ส.'

  prefix_male() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.prefix_male()
        ...
        'ด.ช.'
        'ด.ช.'
        'นาย'
        'นาย'
        'นาย'

  prefix_nonbinary() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.prefix_nonbinary()
        ...
        'ด.ช.'
        'นาย'
        'ด.ญ.'
        'น.ส.'
        'นาย'

  suffix() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.suffix()
        ...
        'ณ มหาไชย'
        'ณ ร้อยเอ็จ'
        'ณ จัมปาศักดิ์'
        'ณ ป้อมเพชร์'
        'ณ ลำพูน'

  suffix_female() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.suffix_female()
        ...
        'ณ มหาไชย'
        'ณ ร้อยเอ็จ'
        'ณ จัมปาศักดิ์'
        'ณ ป้อมเพชร์'
        'ณ ลำพูน'

  suffix_male() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.suffix_male()
        ...
        'ณ มหาไชย'
        'ณ ร้อยเอ็จ'
        'ณ จัมปาศักดิ์'
        'ณ ป้อมเพชร์'
        'ณ ลำพูน'

  suffix_nonbinary() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.suffix_nonbinary()
        ...
        'ณ มหาไชย'
        'ณ ร้อยเอ็จ'
        'ณ จัมปาศักดิ์'
        'ณ ป้อมเพชร์'
        'ณ ลำพูน'

## `faker.providers.phone_number`

class faker.providers.phone_number.th_TH.Provider(generator: Any)

  Bases: `Provider`

  country_calling_code() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.country_calling_code()
        ...
        '+687'
        '+595'
        '+880'
        '+964'
        '+41'

  msisdn() → str

    https://en.wikipedia.org/wiki/MSISDN

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.msisdn()
        ...
        '6048764759382'
        '2194892411578'
        '5659387784080'
        '6097535139332'
        '1158714841858'

  phone_number() → str
    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.phone_number()
        ...
        '0 866 048 764'
        '097 593 8242'
        '0 619 489 241'
        '+66 (0) 615 781 565'
        '073877840'

## `faker.providers.ssn`

class faker.providers.ssn.th_TH.Provider(generator: Any)

  Bases: `Provider`

  ssn() → str

    Thai national ID

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.ssn()
        ...
        '3-5916-80040-72-3'
        '6-3313-30199-84-3'
        '4-1511-23767-55-8'
        '8-5320-15716-22-1'
        '4-3911-06975-73-1'

  vat_id() → str

    Personal VAT ID is the same as national ID (Corporate VAT ID is different)

    Examples:

        >>> Faker.seed(0)
        >>> for _ in range(5):
        ...     fake.vat_id()
        ...
        '8-5708-01205-86-8'
        '1-1804-24716-63-9'
        '6-4108-25786-12-1'
        '3-7115-29540-10-9'
        '1-4112-22922-33-3'