如何在不使用"If"的情况下随机选择一个数字?

Adi*_*219 1 python python-3.x

基本上,我在Python(3)中乱搞,我正在尝试定义一些函数来在单行中执行一些常见任务,尽可能减少内存使用

例如,在视频游戏中,您可能希望角色向左/向右转动一些角度,但不是0度.那么,给定一个整数x,你怎么能在-x+ x'(包括)之间返回一个不是0 的随机整数?

注意,我要使用最小内存的单行.

我正在发布答案,但我也想知道其他人会如何处理这个问题.

编辑:这不是学校的家庭作业或任何东西,我只是设计一个视频游戏,并定义一些将派上用场的功能.我说没有'如果是因为我想知道是否可能,如果是,那怎么样.

谢谢 :-)

kch*_*kch 6

我会建议:

import random

def randint_between(x):
    return random.choice([-1, 1]) * random.randint(1, x)
Run Code Online (Sandbox Code Playgroud)