Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python random.randrange中的ValueError_Python_Random - Fatal编程技术网

Python random.randrange中的ValueError

Python random.randrange中的ValueError,python,random,Python,Random,我收到一个值错误,我的任务是得到一个介于高和低之间的随机数。 我的错在哪里 以下是回溯: def wordjumble(Wordlist, Hintlist, score): wordchoice = getword(Wordlist, Hintlist) high = len(wordchoice) low = -len(wordchoice) for i in range(10): position = random.randrange(hig

我收到一个值错误,我的任务是得到一个介于高和低之间的随机数。 我的错在哪里

以下是回溯:

def wordjumble(Wordlist, Hintlist, score):
    wordchoice = getword(Wordlist, Hintlist)
    high = len(wordchoice)
    low = -len(wordchoice)
    for i in range(10):
        position = random.randrange(high,low)
        print wordchoice[position]
    score = wordguess(wordchoice, score)
    return score

在一般范围内,从
,您需要检查


您可以找到简单的用法示例

在一般范围内,用
给出,您需要检查


您可以找到简单的用法示例

由于在第行中颠倒了参数,因此出现了错误:

   random.randrange([start], stop[, step])
   Return a randomly selected element from range(start, stop, step). This is equivalent to          choice(range(start, stop, step)), but doesn’t actually build a range object.
应该是:

 position = random.randrange(high,low)
建议:大多数python参考文档都显示了代码示例。首先查看它们,因为它们可能会立即帮助您:

亲切的问候,

Bo

您将收到一个错误,因为您在第行中反转了参数:

   random.randrange([start], stop[, step])
   Return a randomly selected element from range(start, stop, step). This is equivalent to          choice(range(start, stop, step)), but doesn’t actually build a range object.
应该是:

 position = random.randrange(high,low)
建议:大多数python参考文档都显示了代码示例。首先查看它们,因为它们可能会立即帮助您:

亲切的问候,
Bo

更改行

 position = random.randrange(low,high)

ETA:此代码还有其他问题。如果
wordchoice
是一个单词(正如
getword
函数所暗示的那样),那么循环所做的是在
-len(wordchoice)
len(wordchoice)-1
之间选择一个随机数。如果您试图从单词中获取一个随机字母,那么在
0
len(wordchoice)-1
之间做一个随机数会更简单,甚至只做
random.choice(wordchoice)

看起来循环是从单词中随机抽取10个字母并打印出来(每一个都在一行上)。这意味着使用
这个词
会导致类似以下的“混乱”:

        position = random.randrange(low,high)
它总是有10个字母,并且不能保证它只使用单词的每个字母一次(这对于你的混乱来说可能是必要的)。如果不选择10个替换字母,而是希望它通过更改字母顺序(如函数标题所示,
wordjumble
)来混淆单词,请查看一个好的解决方案。

更改行

 position = random.randrange(low,high)

ETA:此代码还有其他问题。如果
wordchoice
是一个单词(正如
getword
函数所暗示的那样),那么循环所做的是在
-len(wordchoice)
len(wordchoice)-1
之间选择一个随机数。如果您试图从单词中获取一个随机字母,那么在
0
len(wordchoice)-1
之间做一个随机数会更简单,甚至只做
random.choice(wordchoice)

看起来循环是从单词中随机抽取10个字母并打印出来(每一个都在一行上)。这意味着使用
这个词
会导致类似以下的“混乱”:

        position = random.randrange(low,high)

它总是有10个字母,并且不能保证它只使用单词的每个字母一次(这对于你的混乱来说可能是必要的)。如果不选择10个替换字母,而是希望它通过更改字母顺序(正如函数标题所暗示的那样,
wordjumble
)来混淆单词,请查看一个好的解决方案。

高、低
替换为
低、高

h
t
t
e
h 
e
t
e
t
e

高、低
替换为
低、高

h
t
t
e
h 
e
t
e
t
e

是的,你的错误在哪里?:-)。。您能提供您收到的回溯/错误消息吗?请阅读.Traceback的文档(上次调用):wordjumble(Wordlist,Hintlist,score)文件第54行的文件“E:\Programming\Python\Worksheet 15\test.py”,第49行,wordjumble位置=random.randrange(高,低)文件“E:\Portable Python 2.7.2.1\App\lib\random.py”,randrange中的第217行,raise VALUERROR,“randrange()的空范围(%d,%d,%d)”%(istart,istop,width)VALUERROR:randrange()的空范围(7,-7,-14)@Geosigmata这应该是您问题的一部分,而不是注释。请编辑您的问题以包含回溯。将来,如果您提出这样的问题,请尝试包含完整的工作代码示例(在这种情况下,不清楚您传递给函数的参数)以及错误消息。是的,你的错误在哪里?:-)…你能提供你得到的回溯/错误消息吗?请阅读.Traceback的文档(最近一次调用):文件“E:\Programming\Python\Worksheet 15\test.py”,第54行,在wordjumble(Wordlist,Hintlist,score)文件“E:\Programming\Python\Worksheet 15\test.py”中“,第49行,在wordjumble position=random.randrange(高、低)文件“E:\Portable Python 2.7.2.1\App\lib\random.py”中,第217行,在randrange raise VALUERROR中,“randrange()的空范围(%d,%d,%d)”%(istart,istop,width)VALUERROR:randrange()的空范围(7,-,-,-14)@Geosigmata这应该是你问题的一部分,没有评论。请编辑您的问题以包含回溯。将来,如果您提出这样的问题,请尝试包含完整的工作代码示例(在本例中,不清楚您要传递给函数的参数)和错误消息。我对python和一般编程相当陌生,因为我很抱歉遇到了一个新手问题。有谁能给我一个例子来修复它吗?random.randrange(low,high)而不是random.randrange(high,low)如何包装一些单词?基本上情况是:这个函数什么都不给,当你试图使用它给你的值时,python会抱怨,因为它就是这样做的。与其他语言不同,Python非常小心,不会让诸如分段错误之类的事情发生,以及在C语言中发生时,你在屏幕前哭了好几个小时。@Flo:你为什么不更新你的答案,把所有这些解释都包括进去?我对python和编程基本上是相当陌生的,因为我对一个新手的问题感到抱歉。有谁能给我举个例子来修复它吗?random.randrange(低,高