To answer the question:

now how do I make sure the generated id is unique in the dataset?

You have to use: unique.random_int

So, your code will be like this as you see below:

from faker import Faker
import random
import pandas as pd

Faker.seed(0)
random.seed(0)
fake = Faker("en_US") 
fixed_digits = 6
concatid = 'ID'
idcode,name, city, country, job, age = [[] for k in range(0,6)] 

for row in range(0,100):
    idcode.append(concatid + str(fake.unique.random_int(min=111111, max=999999)))
    name.append(fake.name())
    city.append(fake.city())
    country.append(fake.country())
    job.append(fake.job())
    age.append(random.randint(20,100))

d = {"ID Code":idcode, "Name":name, "Age":age, "City":city, "Country":country, "Job":job}
df = pd.DataFrame(d)
df.head()
Answer from Geek Logbook on Stack Overflow
🌐
Faker
faker.readthedocs.io › en › master › providers › faker.providers.python.html
faker.providers.python — Faker 40.12.0 documentation
Generates a random object passing the type desired. ... pyset(nb_elements: int = 10, variable_nb_elements: bool = True, value_types: List[Type] | Tuple[Type, ...] | None = None, allowed_types: List[Type] | Tuple[Type, ...] | None = None) → Set[Any]¶ ... >>> Faker.seed(0) >>> for _ in range(5): ...
🌐
Faker
faker.readthedocs.io › en › master › providers › baseprovider.html
faker.providers. - BaseProvider - Faker's documentation!
>>> Faker.seed(0) >>> for _ in ... random_int(min: int = 0, max: int = 9999, step: int = 1) → int¶ · Generate a random integer between two integers min and max inclusive while observing the provided step value....
🌐
FakerPHP
fakerphp.org › formatters › numbers-and-strings
Numbers and Strings - FakerPHP / Faker
By default, an integer is generated between 0 and 2,147,483,647 (32-bit integer). echo $faker->numberBetween(); // 120378987, 182, 102310983 echo $faker->numberBetween(0, 100); // 32, 87, 91, 13, 75 · Generates a random character from the alphabet.
🌐
GitHub
gist.github.com › rg3915 › 744aacde209046901748
Generate random values with Python gen_random faker gen_date fake gen date fake · GitHub
Generate random values with Python gen_random faker gen_date fake gen date fake - gen_random_values.py
🌐
GitHub
github.com › joke2k › faker › blob › master › faker › providers › python › __init__.py
faker/faker/providers/python/__init__.py at master · joke2k/faker
"""Generate a random integer of a given length · · If length is 0, so is the number. Otherwise the first digit must not be 0. """ · if length < 0: raise ValueError("Length must be a non-negative integer.") elif length == 0: return 0 ·
Author   joke2k
🌐
CodingNomads
codingnomads.com › how-to-use-python-faker-random-data-generator
How to Use Python Faker: Random Data Generator
Using the faker.Faker class, you can generate all sorts of dummy data, like emails, usernames, and even dates in the past, using Faker's random data generator. Sometimes, a Faker object can generate duplicate data. It's best to catch the IntegrityError exception that SQLAlchemy would otherwise ...
Find elsewhere
🌐
Linux Hint
linuxhint.com › python-faker-generate-dummy-data
How to Use Python Faker to Generate Dummy Data – Linux Hint
Different types of random numbers can be generated by using the faker library. Create a Python file with the following script that will generate three types of random numbers. The random_int() function will generate a random integer number. The random_number(digit=5) function will generate ...
🌐
ZetCode
zetcode.com › python › faker
Python Faker - generating fake data in Python with Faker module
January 29, 2024 - The Faker allows to generate random digits and integers. ... #!/usr/bin/python from faker import Faker faker = Faker() print(f'Random int: {faker.random_int()}') print(f'Random int: {faker.random_int(0, 100)}') print(f'Random digit: {faker.random_digit()}')
🌐
DEV Community
dev.to › dev_neil_a › python-how-to-create-sample-data-using-faker-co4
Python How-To: Create Sample Data Using Faker - DEV Community
October 20, 2024 - As part of the for loop, a dictionary with the required key-value pairs is created. The only parts that don't use faker are the house_number (random integer between 1 and 250) and the country which was manually set to United Kingdom.
🌐
PyPI
pypi.org › project › Faker
Faker · PyPI
When using Faker for unit testing, you will often want to generate the same data set. For convenience, the generator also provides a seed() method, which seeds the shared random number generator.
      » pip install Faker
    
Published   Apr 06, 2026
Version   40.13.0
🌐
Blue Book
lyz-code.github.io › blue-book › coding › python › faker
Faker - The Blue Book
from random import SystemRandom @pytest.fixture(scope="session", autouse=True) def faker_seed() -> int: """Create a random seed for the Faker library.""" return SystemRandom().randint(0, 999999)
🌐
GitHub
github.com › joke2k › faker › blob › master › faker › providers › __init__.py
faker/faker/providers/__init__.py at master · joke2k/faker
Under the hood, this method uses :meth:`random_digit() <faker.providers.BaseProvider.random_digit>`,
Author   joke2k
🌐
Faker
faker.readthedocs.io › en › master › providers › faker.providers.misc.html
faker.providers.misc — Faker 40.11.1 documentation
Generate a random boolean value based on chance_of_getting_true. ... >>> Faker.seed(0) >>> for _ in range(5): ... fake.boolean(chance_of_getting_true=25) ...
🌐
Readthedocs
maleficefakertest.readthedocs.io › en › latest › providers › faker.providers.python.html
faker.providers.python — Faker 4.5.0 documentation
pystr_format(string_format='?#-###{{random_int}}{{random_letter}}', letters='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')¶ · >>> Faker.seed(0) >>> for _ in range(5): ... fake.pystr_format() ...
🌐
Medium
medium.com › featurepreneur › generate-random-data-with-faker-library-in-python-500334df812e
Generate random data with Faker library in Python | by Raja CSP Raman | featurepreneur | Medium
January 13, 2022 - def generate_names(count, type): item_list = [] for i in range(count): if(type == 'name'): c_item = faker.name() elif(type == 'address'): c_item = faker.address() print(f'[{i}] : {c_item}') item_list.append(c_item) return item_list
🌐
Faker
faker.readthedocs.io › en › latest › providers › faker.providers.python.html
faker.providers.python — Faker 40.11.1 documentation
Generates a random object passing the type desired. ... pyset(nb_elements: int = 10, variable_nb_elements: bool = True, value_types: List[Type] | Tuple[Type, ...] | None = None, allowed_types: List[Type] | Tuple[Type, ...] | None = None) → Set[Any]¶ ... >>> Faker.seed(0) >>> for _ in range(5): ...
🌐
LearnModernPython
learnmodernpython.com › home › mastering the ‘faker’ library: generate realistic fake data in python
Mastering The 'Faker' Library: Generate Realistic Fake Data In Python
February 25, 2026 - The ‘Faker’ library provides a variety of providers, each responsible for generating a specific type of data. Here are some of the most common data types you can generate: Name: Generate random names (first names, last names, full names). Address: Generate random addresses (street addresses, cities, states, zip codes, countries). Text: Generate random text (paragraphs, sentences, words). Numbers: Generate random numbers (integers, floats).