In python there are different ways to generate id’s. Let’s see how different types of Id’s can be generated using python without using inbuilt Python libraries.
1. Generating Random Integer as Ids’
Code #1 : Print 10 random values of numbers between 1 and 100.
Python3
# Python3 code to demonstrate the # random generation of Integer id's import random # determines how many values # will be printed for x in range ( 10 ): # print 10 random values # between 1 and 100 print (random.randint( 1 , 101 )) |
Output :
76 72 7 78 77 19 24 23 77 96
Code #2 : Print random numbers between 1 and 100 which are multiple of 5.
Python3
# Python3 code to demonstrate # the random generation of id's # which are multiple of 5 import random # determines how many # values will be printed for x in range ( 10 ): # print 10 random values between # 1 and 100 which are multiple of 5 print (random.randint( 1 , 20 ) * 5 ) |
Output :
60 30 35 100 85 25 100 20 90 85
Drawbacks :
- Generating Random numbers is not unique, Same number can repeat itself.
- It generates only Integer values.
2. Generating Random String as Ids’
Generating Random string id’s consists of letters and digits. This can be useful in generating passwords as its provide the encryption and decryption technique.
Code #1 : Show how to generate random string id’s.
Python3
# Python3 code to demonstrate the # random generation of string id's import random import string # Generate a random string # with 32 characters. random = ''.join([random.choice(string.ascii_letters + string.digits) for n in range ( 32 )]) # print the random # string of length 32 print (random) |
Output :
Rf2IdqUNkURNN6mw82kSpyxQe9ib3usX
Code #2 : Using Function call
Python3
# Python3 code to demonstrate # the random generation of string id's import random import string # defining function for random # string id with parameter def ran_gen(size, chars = string.ascii_uppercase + string.digits): return ''.join(random.choice(chars) for x in range (size)) # function call for random string # generation with size 8 and string print (ran_gen( 8 , "AEIOSUMA23" )) |
Output :
S2M2IEAO