# Python – Generate random number except K in list

Sometimes, while working with python, we can have a problem in which we need to generate random number. This seems quite easy but sometimes we require a slight variation of it. That is, we require to generate random number from a list except K. Lets discuss certain ways in which this task can be performed.

Method #1 : Using `choice()` + list comprehension
The combination of above functions can be used to perform this task. In this, we first filter out the numbers except K using list comprehension and then feed that list to choice() for random number generation.

 `# Python3 code to demonstrate  ` `# Generate random number except K in list ` `# using choice() + list comprehension ` `import` `random ` ` `  `# Initializing list  ` `test_list ``=` `[``4``, ``7``, ``8``, ``4``, ``6``, ``10``] ` ` `  `# printing original list ` `print``(``"The original list is : "` `+` `str``(test_list)) ` ` `  `# Initializing K  ` `K ``=` `4` ` `  `# Generate random number except K in list ` `# using choice() + list comprehension ` `res ``=` `random.choice([ele ``for` `ele ``in` `test_list ``if` `ele !``=` `K]) ` ` `  `# printing result  ` `print` `(``"The random number except K is : "` `+` `str``(res)) `

Output :

```The original list is : [4, 7, 8, 4, 6, 10]
The random number except K is : 8
```

Method #2 : Using `filter() + lambda + choice()`
This is yet another way in which this task can be performed. In this, we perform method of creating new list using filter and lambda.

 `# Python3 code to demonstrate  ` `# Generate random number except K in list ` `# using choice() + filter() + lambda ` `import` `random ` ` `  `# Initializing list  ` `test_list ``=` `[``4``, ``7``, ``8``, ``4``, ``6``, ``10``] ` ` `  `# printing original list ` `print``(``"The original list is : "` `+` `str``(test_list)) ` ` `  `# Initializing K  ` `K ``=` `4` ` `  `# Generate random number except K in list ` `# using choice() + filter() + lambda ` `res ``=` `random.choice(``list``(``filter``(``lambda` `ele: ele !``=` `K, test_list))) ` ` `  `# printing result  ` `print` `(``"The random number except K is : "` `+` `str``(res)) `

Output :

```The original list is : [4, 7, 8, 4, 6, 10]
The random number except K is : 8
```

My Personal Notes arrow_drop_up
Article Tags :

Be the First to upvote.

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.