如何打印一组中的随机数,除了一个或两个数字?

时间:2016-05-07 21:06:45

标签: python random

我想打印1到10的随机数,但我不想包括3或4。

我知道我需要

print randint(1,11)

打印随机数,但如何确保不生成3或4?

3 个答案:

答案 0 :(得分:2)

许多方法之一是使用random.choice(),它从非空序列中返回一个随机元素:

>>> import random
>>> a = range(1,11)
>>> a.remove(3)
>>> a.remove(4)
>>> a
[1, 2, 5, 6, 7, 8, 9, 10]
>>> random.choice(a)
2

答案 1 :(得分:1)

允许您清晰地显示并轻松编辑您想要的内容:

a = random.choice(list(set(range(1, 11)) - {3, 4}))

答案 2 :(得分:0)

可能有更多的pythonic方法,但这是我的解决方案!

MariaDB []> SELECT
    ->   `NAME`
    ->   ,`ACCOUNT`
    ->   ,`SALARY`
    ->   , (SELECT count(*) FROM abc WHERE `ACCOUNT` = a.`ACCOUNT` ) AS 'ACCOUNT COUNT'
    ->    FROM abc a;
+------+---------+--------+---------------+
| NAME | ACCOUNT | SALARY | ACCOUNT COUNT |
+------+---------+--------+---------------+
| a    | 12      |   1222 |             2 |
| b    | 113     | 222222 |             1 |
| c    | 21      |   2221 |             1 |
| d    | 12      |   2432 |             2 |
+------+---------+--------+---------------+
4 rows in set (0.00 sec)

MariaDB []>